diff --git a/src/openrct2-ui/windows/RideConstruction.cpp b/src/openrct2-ui/windows/RideConstruction.cpp index 7c89d400ba..45d54442f6 100644 --- a/src/openrct2-ui/windows/RideConstruction.cpp +++ b/src/openrct2-ui/windows/RideConstruction.cpp @@ -2464,7 +2464,7 @@ static void Sub6CbcE2( _tempTrackTileElement.AsTrack()->SetRideIndex(rideIndex); // Draw this map tile - tile_element_paint_setup(session, coords, true); + tile_element_paint_setup(*session, coords, true); // Restore map elements map_set_tile_element(centreTileCoords, _backupTileElementArrays[0]); @@ -2478,8 +2478,8 @@ static void Sub6CbcE2( gMapSize = preserveMapSize; - PaintSessionArrange(session); - PaintDrawStructs(session); + PaintSessionArrange(*session); + PaintDrawStructs(*session); PaintSessionFree(session); } diff --git a/src/openrct2/cmdline/BenchSpriteSort.cpp b/src/openrct2/cmdline/BenchSpriteSort.cpp index ab8625eb35..06c7d4ddba 100644 --- a/src/openrct2/cmdline/BenchSpriteSort.cpp +++ b/src/openrct2/cmdline/BenchSpriteSort.cpp @@ -150,7 +150,7 @@ static void BM_paint_session_arrange(benchmark::State& state, const std::vector< state.PauseTiming(); std::copy_n(local_s, std::size(sessions), sessions.begin()); state.ResumeTiming(); - PaintSessionArrange(&sessions[0].Session); + PaintSessionArrange(sessions[0].Session); benchmark::DoNotOptimize(sessions); } state.SetItemsProcessed(state.iterations() * std::size(sessions)); diff --git a/src/openrct2/drawing/Drawing.h b/src/openrct2/drawing/Drawing.h index cdf6165547..eea7daa0c3 100644 --- a/src/openrct2/drawing/Drawing.h +++ b/src/openrct2/drawing/Drawing.h @@ -576,7 +576,7 @@ void scrolling_text_invalidate(); class Formatter; int32_t scrolling_text_setup( - struct paint_session* session, rct_string_id stringId, Formatter& ft, uint16_t scroll, uint16_t scrollingMode, + struct paint_session& session, rct_string_id stringId, Formatter& ft, uint16_t scroll, uint16_t scrollingMode, colour_t colour); rct_size16 FASTCALL gfx_get_sprite_size(uint32_t image_id); diff --git a/src/openrct2/drawing/LightFX.cpp b/src/openrct2/drawing/LightFX.cpp index 1f0cbae3eb..699959e918 100644 --- a/src/openrct2/drawing/LightFX.cpp +++ b/src/openrct2/drawing/LightFX.cpp @@ -309,8 +309,8 @@ void lightfx_prepare_light_list() dpi.width = 1; paint_session* session = PaintSessionAlloc(&dpi, w->viewport->flags); - PaintSessionGenerate(session); - PaintSessionArrange(session); + PaintSessionGenerate(*session); + PaintSessionArrange(*session); auto info = set_interaction_info_from_paint_session(session, ViewportInteractionItemAll); PaintSessionFree(session); diff --git a/src/openrct2/drawing/ScrollingText.cpp b/src/openrct2/drawing/ScrollingText.cpp index fb951cae56..e3c5e7785d 100644 --- a/src/openrct2/drawing/ScrollingText.cpp +++ b/src/openrct2/drawing/ScrollingText.cpp @@ -1446,13 +1446,13 @@ void scrolling_text_invalidate() } int32_t scrolling_text_setup( - paint_session* session, rct_string_id stringId, Formatter& ft, uint16_t scroll, uint16_t scrollingMode, colour_t colour) + paint_session& session, rct_string_id stringId, Formatter& ft, uint16_t scroll, uint16_t scrollingMode, colour_t colour) { std::scoped_lock lock(_scrollingTextMutex); assert(scrollingMode < MAX_SCROLLING_TEXT_MODES); - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (dpi->zoom_level > ZoomLevel{ 0 }) return SPR_SCROLLING_TEXT_DEFAULT; diff --git a/src/openrct2/entity/Balloon.cpp b/src/openrct2/entity/Balloon.cpp index ad99993c00..e4ff7b530f 100644 --- a/src/openrct2/entity/Balloon.cpp +++ b/src/openrct2/entity/Balloon.cpp @@ -108,7 +108,7 @@ void Balloon::Serialise(DataSerialiser& stream) stream << colour; } -void Balloon::Paint(paint_session* session, int32_t imageDirection) const +void Balloon::Paint(paint_session& session, int32_t imageDirection) const { uint32_t imageId = 22651 + (frame & 7); if (popped != 0) diff --git a/src/openrct2/entity/Balloon.h b/src/openrct2/entity/Balloon.h index 3323ebaf11..90d67f7901 100644 --- a/src/openrct2/entity/Balloon.h +++ b/src/openrct2/entity/Balloon.h @@ -27,5 +27,5 @@ struct Balloon : EntityBase void Pop(); void Press(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; diff --git a/src/openrct2/entity/Duck.cpp b/src/openrct2/entity/Duck.cpp index fa2b3e1c09..22f76498d7 100644 --- a/src/openrct2/entity/Duck.cpp +++ b/src/openrct2/entity/Duck.cpp @@ -364,9 +364,9 @@ void Duck::Serialise(DataSerialiser& stream) stream << state; } -void Duck::Paint(paint_session* session, int32_t imageDirection) const +void Duck::Paint(paint_session& session, int32_t imageDirection) const { - rct_drawpixelinfo& dpi = session->DPI; + rct_drawpixelinfo& dpi = session.DPI; if (dpi.zoom_level > ZoomLevel{ 1 }) return; diff --git a/src/openrct2/entity/Duck.h b/src/openrct2/entity/Duck.h index 78c831724c..55dbc5dc93 100644 --- a/src/openrct2/entity/Duck.h +++ b/src/openrct2/entity/Duck.h @@ -39,7 +39,7 @@ struct Duck : EntityBase bool IsFlying(); void Remove(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; private: void UpdateFlyToWater(); diff --git a/src/openrct2/entity/Fountain.cpp b/src/openrct2/entity/Fountain.cpp index 3a0b017037..4539394d09 100644 --- a/src/openrct2/entity/Fountain.cpp +++ b/src/openrct2/entity/Fountain.cpp @@ -394,13 +394,13 @@ void JumpingFountain::Serialise(DataSerialiser& stream) stream << Iteration; } -void JumpingFountain::Paint(paint_session* session, int32_t imageDirection) const +void JumpingFountain::Paint(paint_session& session, int32_t imageDirection) const { // TODO: Move into sprites.h constexpr uint32_t JumpingFountainSnowBaseImage = 23037; constexpr uint32_t JumpingFountainWaterBaseImage = 22973; - rct_drawpixelinfo& dpi = session->DPI; + rct_drawpixelinfo& dpi = session.DPI; if (dpi.zoom_level > ZoomLevel{ 0 }) { return; diff --git a/src/openrct2/entity/Fountain.h b/src/openrct2/entity/Fountain.h index fa7cf9d3d0..37b236ac04 100644 --- a/src/openrct2/entity/Fountain.h +++ b/src/openrct2/entity/Fountain.h @@ -35,7 +35,7 @@ struct JumpingFountain : EntityBase void Update(); static void StartAnimation(JumpingFountainType newType, const CoordsXY& newLoc, const TileElement* tileElement); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; private: JumpingFountainType GetType() const; diff --git a/src/openrct2/entity/Litter.cpp b/src/openrct2/entity/Litter.cpp index 5b8d7d7271..fe549cc3d6 100644 --- a/src/openrct2/entity/Litter.cpp +++ b/src/openrct2/entity/Litter.cpp @@ -169,9 +169,9 @@ static constexpr const LitterSprite _litterSprites[] = { { SPR_LITTER_EMPTY_BOWL_BLUE, 0x3 }, }; -void Litter::Paint(paint_session* session, int32_t imageDirection) const +void Litter::Paint(paint_session& session, int32_t imageDirection) const { - rct_drawpixelinfo& dpi = session->DPI; + rct_drawpixelinfo& dpi = session.DPI; if (dpi.zoom_level > ZoomLevel{ 0 }) return; // If zoomed at all no litter drawn diff --git a/src/openrct2/entity/Litter.h b/src/openrct2/entity/Litter.h index 64f7811617..0c9e791b15 100644 --- a/src/openrct2/entity/Litter.h +++ b/src/openrct2/entity/Litter.h @@ -42,5 +42,5 @@ struct Litter : EntityBase void Serialise(DataSerialiser& stream); rct_string_id GetName() const; uint32_t GetAge() const; - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; diff --git a/src/openrct2/entity/MoneyEffect.cpp b/src/openrct2/entity/MoneyEffect.cpp index 27cf7eaede..6faa8cbfc3 100644 --- a/src/openrct2/entity/MoneyEffect.cpp +++ b/src/openrct2/entity/MoneyEffect.cpp @@ -166,9 +166,9 @@ void MoneyEffect::Serialise(DataSerialiser& stream) stream << Wiggle; } -void MoneyEffect::Paint(paint_session* session, int32_t imageDirection) const +void MoneyEffect::Paint(paint_session& session, int32_t imageDirection) const { - rct_drawpixelinfo& dpi = session->DPI; + rct_drawpixelinfo& dpi = session.DPI; if (dpi.zoom_level > ZoomLevel{ 0 }) { return; @@ -182,5 +182,5 @@ void MoneyEffect::Paint(paint_session* session, int32_t imageDirection) const auto [stringId, value] = GetStringId(); PaintFloatingMoneyEffect( - session, value, stringId, y, z, const_cast(&waveOffset[Wiggle % 22]), OffsetX, session->CurrentRotation); + session, value, stringId, y, z, const_cast(&waveOffset[Wiggle % 22]), OffsetX, session.CurrentRotation); } diff --git a/src/openrct2/entity/MoneyEffect.h b/src/openrct2/entity/MoneyEffect.h index d76dfcace1..dacef7dbd0 100644 --- a/src/openrct2/entity/MoneyEffect.h +++ b/src/openrct2/entity/MoneyEffect.h @@ -32,5 +32,5 @@ struct MoneyEffect : EntityBase void Update(); std::pair GetStringId() const; void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; diff --git a/src/openrct2/entity/Particle.cpp b/src/openrct2/entity/Particle.cpp index ab16adac22..606a440825 100644 --- a/src/openrct2/entity/Particle.cpp +++ b/src/openrct2/entity/Particle.cpp @@ -149,9 +149,9 @@ void VehicleCrashParticle::Serialise(DataSerialiser& stream) stream << acceleration_z; } -void VehicleCrashParticle::Paint(paint_session* session, int32_t imageDirection) const +void VehicleCrashParticle::Paint(paint_session& session, int32_t imageDirection) const { - rct_drawpixelinfo& dpi = session->DPI; + rct_drawpixelinfo& dpi = session.DPI; if (dpi.zoom_level > ZoomLevel{ 0 }) { return; @@ -199,7 +199,7 @@ void CrashSplashParticle::Serialise(DataSerialiser& stream) stream << frame; } -void CrashSplashParticle::Paint(paint_session* session, int32_t imageDirection) const +void CrashSplashParticle::Paint(paint_session& session, int32_t imageDirection) const { // TODO: Create constant in sprites.h uint32_t imageId = 22927 + (frame / 256); @@ -256,7 +256,7 @@ void SteamParticle::Serialise(DataSerialiser& stream) stream << time_to_move; } -void SteamParticle::Paint(paint_session* session, int32_t imageDirection) const +void SteamParticle::Paint(paint_session& session, int32_t imageDirection) const { // TODO: Create constant in sprites.h uint32_t imageId = 22637 + (frame / 256); @@ -300,7 +300,7 @@ void ExplosionCloud::Serialise(DataSerialiser& stream) stream << frame; } -void ExplosionCloud::Paint(paint_session* session, int32_t imageDirection) const +void ExplosionCloud::Paint(paint_session& session, int32_t imageDirection) const { uint32_t imageId = 22878 + (frame / 256); PaintAddImageAsParent(session, imageId, { 0, 0, z }, { 1, 1, 0 }); @@ -343,7 +343,7 @@ void ExplosionFlare::Serialise(DataSerialiser& stream) stream << frame; } -void ExplosionFlare::Paint(paint_session* session, int32_t imageDirection) const +void ExplosionFlare::Paint(paint_session& session, int32_t imageDirection) const { // TODO: Create constant in sprites.h uint32_t imageId = 22896 + (frame / 256); diff --git a/src/openrct2/entity/Particle.h b/src/openrct2/entity/Particle.h index 9ccfb9c594..353b8fab5b 100644 --- a/src/openrct2/entity/Particle.h +++ b/src/openrct2/entity/Particle.h @@ -32,7 +32,7 @@ struct VehicleCrashParticle : EntityBase static void Create(rct_vehicle_colour colours, const CoordsXYZ& vehiclePos); void Update(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; struct CrashSplashParticle : EntityBase @@ -42,7 +42,7 @@ struct CrashSplashParticle : EntityBase static void Create(const CoordsXYZ& splashPos); void Update(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; struct ExplosionFlare : EntityBase @@ -52,7 +52,7 @@ struct ExplosionFlare : EntityBase static void Create(const CoordsXYZ& flarePos); void Update(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; struct ExplosionCloud : EntityBase @@ -62,7 +62,7 @@ struct ExplosionCloud : EntityBase static void Create(const CoordsXYZ& cloudPos); void Update(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; struct SteamParticle : EntityBase @@ -74,5 +74,5 @@ struct SteamParticle : EntityBase static void Create(const CoordsXYZ& coords); void Update(); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; }; diff --git a/src/openrct2/entity/Peep.cpp b/src/openrct2/entity/Peep.cpp index 4478e09f97..11379253dc 100644 --- a/src/openrct2/entity/Peep.cpp +++ b/src/openrct2/entity/Peep.cpp @@ -2678,7 +2678,7 @@ void Peep::Serialise(DataSerialiser& stream) stream << PeepFlags; } -void Peep::Paint(paint_session* session, int32_t imageDirection) const +void Peep::Paint(paint_session& session, int32_t imageDirection) const { #ifdef __ENABLE_LIGHTFX__ if (lightfx_is_available()) @@ -2709,13 +2709,13 @@ void Peep::Paint(paint_session* session, int32_t imageDirection) const } #endif - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (dpi->zoom_level > ZoomLevel{ 2 }) { return; } - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) { return; } diff --git a/src/openrct2/entity/Peep.h b/src/openrct2/entity/Peep.h index 7bbf1bcd87..857d49a275 100644 --- a/src/openrct2/entity/Peep.h +++ b/src/openrct2/entity/Peep.h @@ -406,7 +406,7 @@ public: // Peep [[nodiscard]] CoordsXY GetDestination() const; void Serialise(class DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; // TODO: Make these private again when done refactoring public: // Peep diff --git a/src/openrct2/interface/Viewport.cpp b/src/openrct2/interface/Viewport.cpp index 4d6989f62a..8ff960d8ae 100644 --- a/src/openrct2/interface/Viewport.cpp +++ b/src/openrct2/interface/Viewport.cpp @@ -834,22 +834,22 @@ void viewport_render( } static void record_session( - const paint_session* session, std::vector* recorded_sessions, size_t record_index) + const paint_session& session, std::vector* recorded_sessions, size_t record_index) { // Perform a deep copy of the paint session, use relative offsets. // This is done to extract the session for benchmark. // Place the copied session at provided record_index, so the caller can decide which columns/paint sessions to copy; // there is no column information embedded in the session itself. auto& recordedSession = recorded_sessions->at(record_index); - recordedSession.Session = *session; - recordedSession.Entries.resize(session->PaintEntryChain.GetCount()); + recordedSession.Session = session; + recordedSession.Entries.resize(session.PaintEntryChain.GetCount()); // Mind the offset needs to be calculated against the original `session`, not `session_copy` std::unordered_map entryRemap; // Copy all entries auto paintIndex = 0; - auto chain = session->PaintEntryChain.Head; + auto chain = session.PaintEntryChain.Head; while (chain != nullptr) { for (size_t i = 0; i < chain->Count; i++) @@ -894,7 +894,7 @@ static void record_session( } static void viewport_fill_column( - paint_session* session, std::vector* recorded_sessions, size_t record_index) + paint_session& session, std::vector* recorded_sessions, size_t record_index) { PaintSessionGenerate(session); if (recorded_sessions != nullptr) @@ -904,32 +904,32 @@ static void viewport_fill_column( PaintSessionArrange(session); } -static void viewport_paint_column(paint_session* session) +static void viewport_paint_column(paint_session& session) { - if (session->ViewFlags + if (session.ViewFlags & (VIEWPORT_FLAG_HIDE_VERTICAL | VIEWPORT_FLAG_HIDE_BASE | VIEWPORT_FLAG_UNDERGROUND_INSIDE | VIEWPORT_FLAG_CLIP_VIEW) - && (~session->ViewFlags & VIEWPORT_FLAG_TRANSPARENT_BACKGROUND)) + && (~session.ViewFlags & VIEWPORT_FLAG_TRANSPARENT_BACKGROUND)) { uint8_t colour = COLOUR_AQUAMARINE; - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES) { colour = COLOUR_BLACK; } - gfx_clear(&session->DPI, colour); + gfx_clear(&session.DPI, colour); } PaintDrawStructs(session); - if (gConfigGeneral.render_weather_gloom && !gTrackDesignSaveMode && !(session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES) - && !(session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + if (gConfigGeneral.render_weather_gloom && !gTrackDesignSaveMode && !(session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES) + && !(session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) { - viewport_paint_weather_gloom(&session->DPI); + viewport_paint_weather_gloom(&session.DPI); } - if (session->PSStringHead != nullptr) + if (session.PSStringHead != nullptr) { - PaintDrawMoneyStructs(&session->DPI, session->PSStringHead); + PaintDrawMoneyStructs(&session.DPI, session.PSStringHead); } } @@ -1038,11 +1038,11 @@ void viewport_paint( if (useMultithreading) { _paintJobs->AddTask( - [session, recorded_sessions, index]() -> void { viewport_fill_column(session, recorded_sessions, index); }); + [session, recorded_sessions, index]() -> void { viewport_fill_column(*session, recorded_sessions, index); }); } else { - viewport_fill_column(session, recorded_sessions, index); + viewport_fill_column(*session, recorded_sessions, index); } } @@ -1056,11 +1056,11 @@ void viewport_paint( { if (useParallelDrawing) { - _paintJobs->AddTask([session]() -> void { viewport_paint_column(session); }); + _paintJobs->AddTask([session]() -> void { viewport_paint_column(*session); }); } else { - viewport_paint_column(session); + viewport_paint_column(*session); } } if (useParallelDrawing) @@ -1736,8 +1736,8 @@ InteractionInfo get_map_coordinates_from_pos_window(rct_window* window, const Sc dpi.width = 1; paint_session* session = PaintSessionAlloc(&dpi, myviewport->flags); - PaintSessionGenerate(session); - PaintSessionArrange(session); + PaintSessionGenerate(*session); + PaintSessionArrange(*session); info = set_interaction_info_from_paint_session(session, flags & 0xFFFF); PaintSessionFree(session); } diff --git a/src/openrct2/paint/Paint.Entity.cpp b/src/openrct2/paint/Paint.Entity.cpp index a39edb542c..aaf786f6f8 100644 --- a/src/openrct2/paint/Paint.Entity.cpp +++ b/src/openrct2/paint/Paint.Entity.cpp @@ -33,24 +33,24 @@ * Paint Quadrant * rct2: 0x0069E8B0 */ -void EntityPaintSetup(paint_session* session, const CoordsXY& pos) +void EntityPaintSetup(paint_session& session, const CoordsXY& pos) { if (!map_is_location_valid(pos)) { return; } - if (gTrackDesignSaveMode || (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES)) + if (gTrackDesignSaveMode || (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SPRITES)) { return; } - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (dpi->zoom_level > ZoomLevel{ 2 }) { return; } - const bool highlightPathIssues = (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES); + const bool highlightPathIssues = (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES); for (const auto* spr : EntityTileList(pos)) { @@ -76,7 +76,7 @@ void EntityPaintSetup(paint_session* session, const CoordsXY& pos) // Here converting from land/path/etc height scale to pixel height scale. // Note: peeps/scenery on slopes will be above the base // height of the slope element, and consequently clipped. - if ((session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW)) + if ((session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW)) { if (entityPos.z > (gClipHeight * COORDS_Z_STEP)) { @@ -92,7 +92,7 @@ void EntityPaintSetup(paint_session* session, const CoordsXY& pos) } } - dpi = &session->DPI; + dpi = &session.DPI; if (dpi->y + dpi->height <= spr->SpriteRect.GetTop() || spr->SpriteRect.GetBottom() <= dpi->y || dpi->x + dpi->width <= spr->SpriteRect.GetLeft() || spr->SpriteRect.GetRight() <= dpi->x) @@ -100,15 +100,15 @@ void EntityPaintSetup(paint_session* session, const CoordsXY& pos) continue; } - int32_t image_direction = session->CurrentRotation; + int32_t image_direction = session.CurrentRotation; image_direction <<= 3; image_direction += spr->sprite_direction; image_direction &= 0x1F; - session->CurrentlyDrawnItem = spr; - session->SpritePosition.x = entityPos.x; - session->SpritePosition.y = entityPos.y; - session->InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = spr; + session.SpritePosition.x = entityPos.x; + session.SpritePosition.y = entityPos.y; + session.InteractionType = ViewportInteractionItem::Entity; switch (spr->Type) { diff --git a/src/openrct2/paint/Paint.Entity.h b/src/openrct2/paint/Paint.Entity.h index d9e7c90f12..46d26064f3 100644 --- a/src/openrct2/paint/Paint.Entity.h +++ b/src/openrct2/paint/Paint.Entity.h @@ -12,4 +12,4 @@ struct paint_session; struct CoordsXY; -void EntityPaintSetup(paint_session* session, const CoordsXY& pos); +void EntityPaintSetup(paint_session& session, const CoordsXY& pos); diff --git a/src/openrct2/paint/Paint.cpp b/src/openrct2/paint/Paint.cpp index 8040d542b1..0a50fa6543 100644 --- a/src/openrct2/paint/Paint.cpp +++ b/src/openrct2/paint/Paint.cpp @@ -83,19 +83,19 @@ static int32_t RemapPositionToQuadrant(const paint_struct& ps, uint8_t rotation) return 0; } -static void PaintSessionAddPSToQuadrant(paint_session* session, paint_struct* ps) +static void PaintSessionAddPSToQuadrant(paint_session& session, paint_struct* ps) { - const auto positionHash = RemapPositionToQuadrant(*ps, session->CurrentRotation); + const auto positionHash = RemapPositionToQuadrant(*ps, session.CurrentRotation); // Values below zero or above MaxPaintQuadrants are void, corners also share the same quadrant as void. const uint32_t paintQuadrantIndex = std::clamp(positionHash / COORDS_XY_STEP, 0, MaxPaintQuadrants - 1); ps->quadrant_index = paintQuadrantIndex; - ps->next_quadrant_ps = session->Quadrants[paintQuadrantIndex]; - session->Quadrants[paintQuadrantIndex] = ps; + ps->next_quadrant_ps = session.Quadrants[paintQuadrantIndex]; + session.Quadrants[paintQuadrantIndex] = ps; - session->QuadrantBackIndex = std::min(session->QuadrantBackIndex, paintQuadrantIndex); - session->QuadrantFrontIndex = std::max(session->QuadrantFrontIndex, paintQuadrantIndex); + session.QuadrantBackIndex = std::min(session.QuadrantBackIndex, paintQuadrantIndex); + session.QuadrantFrontIndex = std::max(session.QuadrantFrontIndex, paintQuadrantIndex); } static constexpr bool ImageWithinDPI(const ScreenCoordsXY& imagePos, const rct_g1_element& g1, const rct_drawpixelinfo& dpi) @@ -147,7 +147,7 @@ static constexpr CoordsXYZ RotateBoundBoxSize(const CoordsXYZ& bbSize, const uin * Extracted from 0x0098196c, 0x0098197c, 0x0098198c, 0x0098199c */ static paint_struct* CreateNormalPaintStruct( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { auto* const g1 = gfx_get_g1_element(image_id); @@ -156,21 +156,21 @@ static paint_struct* CreateNormalPaintStruct( return nullptr; } - const auto swappedRotation = DirectionFlipXAxis(session->CurrentRotation); + const auto swappedRotation = DirectionFlipXAxis(session.CurrentRotation); auto swappedRotCoord = CoordsXYZ{ offset.Rotate(swappedRotation), offset.z }; - swappedRotCoord += session->SpritePosition; + swappedRotCoord += session.SpritePosition; - const auto imagePos = translate_3d_to_2d_with_z(session->CurrentRotation, swappedRotCoord); + const auto imagePos = translate_3d_to_2d_with_z(session.CurrentRotation, swappedRotCoord); - if (!ImageWithinDPI(imagePos, *g1, session->DPI)) + if (!ImageWithinDPI(imagePos, *g1, session.DPI)) { return nullptr; } const auto rotBoundBoxOffset = CoordsXYZ{ boundBoxOffset.Rotate(swappedRotation), boundBoxOffset.z }; - const auto rotBoundBoxSize = RotateBoundBoxSize(boundBoxSize, session->CurrentRotation); + const auto rotBoundBoxSize = RotateBoundBoxSize(boundBoxSize, session.CurrentRotation); - auto* ps = session->AllocateNormalPaintEntry(); + auto* ps = session.AllocateNormalPaintEntry(); if (ps == nullptr) { return nullptr; @@ -179,27 +179,27 @@ static paint_struct* CreateNormalPaintStruct( ps->image_id = image_id; ps->x = imagePos.x; ps->y = imagePos.y; - ps->bounds.x_end = rotBoundBoxSize.x + rotBoundBoxOffset.x + session->SpritePosition.x; - ps->bounds.y_end = rotBoundBoxSize.y + rotBoundBoxOffset.y + session->SpritePosition.y; + ps->bounds.x_end = rotBoundBoxSize.x + rotBoundBoxOffset.x + session.SpritePosition.x; + ps->bounds.y_end = rotBoundBoxSize.y + rotBoundBoxOffset.y + session.SpritePosition.y; ps->bounds.z_end = rotBoundBoxSize.z + rotBoundBoxOffset.z; - ps->bounds.x = rotBoundBoxOffset.x + session->SpritePosition.x; - ps->bounds.y = rotBoundBoxOffset.y + session->SpritePosition.y; + ps->bounds.x = rotBoundBoxOffset.x + session.SpritePosition.x; + ps->bounds.y = rotBoundBoxOffset.y + session.SpritePosition.y; ps->bounds.z = rotBoundBoxOffset.z; ps->flags = 0; ps->attached_ps = nullptr; ps->children = nullptr; - ps->sprite_type = session->InteractionType; - ps->map_x = session->MapPosition.x; - ps->map_y = session->MapPosition.y; - ps->tileElement = reinterpret_cast(const_cast(session->CurrentlyDrawnItem)); + ps->sprite_type = session.InteractionType; + ps->map_x = session.MapPosition.x; + ps->map_y = session.MapPosition.y; + ps->tileElement = reinterpret_cast(const_cast(session.CurrentlyDrawnItem)); return ps; } -template void PaintSessionGenerateRotate(paint_session* session) +template void PaintSessionGenerateRotate(paint_session& session) { // Optimised modified version of viewport_coord_to_map_coord - ScreenCoordsXY screenCoord = { floor2(session->DPI.x, 32), floor2((session->DPI.y - 16), 32) }; + ScreenCoordsXY screenCoord = { floor2(session.DPI.x, 32), floor2((session.DPI.y - 16), 32) }; CoordsXY mapTile = { screenCoord.y - screenCoord.x / 2, screenCoord.y + screenCoord.x / 2 }; mapTile = mapTile.Rotate(direction); @@ -209,7 +209,7 @@ template void PaintSessionGenerateRotate(paint_session* sessi } mapTile = mapTile.ToTileStart(); - uint16_t numVerticalTiles = (session->DPI.height + 2128) >> 5; + uint16_t numVerticalTiles = (session.DPI.height + 2128) >> 5; // Adjacent tiles to also check due to overlapping of sprites constexpr CoordsXY adjacentTiles[] = { @@ -242,10 +242,10 @@ template void PaintSessionGenerateRotate(paint_session* sessi * * rct2: 0x0068B6C2 */ -void PaintSessionGenerate(paint_session* session) +void PaintSessionGenerate(paint_session& session) { - session->CurrentRotation = get_current_rotation(); - switch (DirectionFlipXAxis(session->CurrentRotation)) + session.CurrentRotation = get_current_rotation(); + switch (DirectionFlipXAxis(session.CurrentRotation)) { case 0: PaintSessionGenerateRotate<0>(session); @@ -424,19 +424,19 @@ static paint_struct* PaintArrangeStructsHelperRotation(paint_struct* ps_next, ui } } -template static void PaintSessionArrange(PaintSessionCore* session, bool) +template static void PaintSessionArrange(PaintSessionCore& session, bool) { - paint_struct* psHead = &session->PaintHead; + paint_struct* psHead = &session.PaintHead; paint_struct* ps = psHead; ps->next_quadrant_ps = nullptr; - uint32_t quadrantIndex = session->QuadrantBackIndex; + uint32_t quadrantIndex = session.QuadrantBackIndex; if (quadrantIndex != UINT32_MAX) { do { - paint_struct* ps_next = session->Quadrants[quadrantIndex]; + paint_struct* ps_next = session.Quadrants[quadrantIndex]; if (ps_next != nullptr) { ps->next_quadrant_ps = ps_next; @@ -447,13 +447,13 @@ template static void PaintSessionArrange(PaintSessionCore* sessio } while (ps_next != nullptr); } - } while (++quadrantIndex <= session->QuadrantFrontIndex); + } while (++quadrantIndex <= session.QuadrantFrontIndex); paint_struct* ps_cache = PaintArrangeStructsHelperRotation( - psHead, session->QuadrantBackIndex & 0xFFFF, PaintSortFlags::Neighbour); + psHead, session.QuadrantBackIndex & 0xFFFF, PaintSortFlags::Neighbour); - quadrantIndex = session->QuadrantBackIndex; - while (++quadrantIndex < session->QuadrantFrontIndex) + quadrantIndex = session.QuadrantBackIndex; + while (++quadrantIndex < session.QuadrantFrontIndex) { ps_cache = PaintArrangeStructsHelperRotation(ps_cache, quadrantIndex & 0xFFFF, PaintSortFlags::None); } @@ -464,9 +464,9 @@ template static void PaintSessionArrange(PaintSessionCore* sessio * * rct2: 0x00688217 */ -void PaintSessionArrange(PaintSessionCore* session) +void PaintSessionArrange(PaintSessionCore& session) { - switch (session->CurrentRotation) + switch (session.CurrentRotation) { case 0: return PaintSessionArrange<0>(session, true); @@ -480,9 +480,9 @@ void PaintSessionArrange(PaintSessionCore* session) Guard::Assert(false); } -static void PaintDrawStruct(paint_session* session, paint_struct* ps) +static void PaintDrawStruct(paint_session& session, paint_struct* ps) { - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; auto x = ps->x; auto y = ps->y; @@ -501,7 +501,7 @@ static void PaintDrawStruct(paint_session* session, paint_struct* ps) } } - auto imageId = PaintPSColourifyImage(ps->image_id, ps->sprite_type, session->ViewFlags); + auto imageId = PaintPSColourifyImage(ps->image_id, ps->sprite_type, session.ViewFlags); if (gPaintBoundingBoxes && dpi->zoom_level == ZoomLevel{ 0 }) { PaintPSImageWithBoundingBoxes(dpi, ps, imageId, x, y); @@ -517,7 +517,7 @@ static void PaintDrawStruct(paint_session* session, paint_struct* ps) } else { - PaintAttachedPS(dpi, ps, session->ViewFlags); + PaintAttachedPS(dpi, ps, session.ViewFlags); } } @@ -525,9 +525,9 @@ static void PaintDrawStruct(paint_session* session, paint_struct* ps) * * rct2: 0x00688485 */ -void PaintDrawStructs(paint_session* session) +void PaintDrawStructs(paint_session& session) { - paint_struct* ps = &session->PaintHead; + paint_struct* ps = &session.PaintHead; for (ps = ps->next_quadrant_ps; ps != nullptr;) { @@ -724,20 +724,20 @@ void PaintSessionFree([[maybe_unused]] paint_session* session) * @return (ebp) paint_struct on success (CF == 0), nullptr on failure (CF == 1) */ paint_struct* PaintAddImageAsParent( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize) + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize) { return PaintAddImageAsParent(session, ImageId::FromUInt32(image_id), offset, boundBoxSize, offset); } paint_struct* PaintAddImageAsParent( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { return PaintAddImageAsParent(session, ImageId::FromUInt32(image_id), offset, boundBoxSize, boundBoxOffset); } paint_struct* PaintAddImageAsParent( - paint_session* session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize) + paint_session& session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize) { return PaintAddImageAsParent(session, imageId, offset, boundBoxSize, offset); } @@ -759,11 +759,11 @@ paint_struct* PaintAddImageAsParent( */ // Track Pieces, Shops. paint_struct* PaintAddImageAsParent( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { - session->LastPS = nullptr; - session->LastAttachedPS = nullptr; + session.LastPS = nullptr; + session.LastAttachedPS = nullptr; auto* ps = CreateNormalPaintStruct(session, image_id, offset, boundBoxSize, boundBoxOffset); if (ps == nullptr) @@ -794,16 +794,16 @@ paint_struct* PaintAddImageAsParent( * Creates a paint struct but does not allocate to a paint quadrant. Result cannot be ignored! */ [[nodiscard]] paint_struct* PaintAddImageAsOrphan( - paint_session* session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { - session->LastPS = nullptr; - session->LastAttachedPS = nullptr; + session.LastPS = nullptr; + session.LastAttachedPS = nullptr; return CreateNormalPaintStruct(session, imageId, offset, boundBoxSize, boundBoxOffset); } paint_struct* PaintAddImageAsChild( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, const CoordsXYZ& boundBoxOffset) { return PaintAddImageAsChild(session, ImageId::FromUInt32(image_id), offset, boundBoxLength, boundBoxOffset); @@ -827,10 +827,10 @@ paint_struct* PaintAddImageAsChild( * If there is no parent paint struct then image is added as a parent */ paint_struct* PaintAddImageAsChild( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, const CoordsXYZ& boundBoxOffset) { - paint_struct* parentPS = session->LastPS; + paint_struct* parentPS = session.LastPS; if (parentPS == nullptr) { return PaintAddImageAsParent(session, image_id, offset, boundBoxLength, boundBoxOffset); @@ -848,7 +848,7 @@ paint_struct* PaintAddImageAsChild( } paint_struct* PaintAddImageAsChild( - paint_session* session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, + paint_session& session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z) { @@ -865,15 +865,15 @@ paint_struct* PaintAddImageAsChild( * @param y (cx) * @return (!CF) success */ -bool PaintAttachToPreviousAttach(paint_session* session, ImageId imageId, int32_t x, int32_t y) +bool PaintAttachToPreviousAttach(paint_session& session, ImageId imageId, int32_t x, int32_t y) { - auto* previousAttachedPS = session->LastAttachedPS; + auto* previousAttachedPS = session.LastAttachedPS; if (previousAttachedPS == nullptr) { return PaintAttachToPreviousPS(session, imageId, x, y); } - auto* ps = session->AllocateAttachedPaintEntry(); + auto* ps = session.AllocateAttachedPaintEntry(); if (ps == nullptr) { return false; @@ -898,20 +898,20 @@ bool PaintAttachToPreviousAttach(paint_session* session, ImageId imageId, int32_ * @param y (cx) * @return (!CF) success */ -bool PaintAttachToPreviousPS(paint_session* session, uint32_t image_id, int32_t x, int32_t y) +bool PaintAttachToPreviousPS(paint_session& session, uint32_t image_id, int32_t x, int32_t y) { return PaintAttachToPreviousPS(session, ImageId::FromUInt32(image_id), x, y); } -bool PaintAttachToPreviousPS(paint_session* session, ImageId image_id, int32_t x, int32_t y) +bool PaintAttachToPreviousPS(paint_session& session, ImageId image_id, int32_t x, int32_t y) { - auto* masterPs = session->LastPS; + auto* masterPs = session.LastPS; if (masterPs == nullptr) { return false; } - auto* ps = session->AllocateAttachedPaintEntry(); + auto* ps = session.AllocateAttachedPaintEntry(); if (ps == nullptr) { return false; @@ -940,18 +940,18 @@ bool PaintAttachToPreviousPS(paint_session* session, ImageId image_id, int32_t x * @param rotation (ebp) */ void PaintFloatingMoneyEffect( - paint_session* session, money64 amount, rct_string_id string_id, int32_t y, int32_t z, int8_t y_offsets[], int32_t offset_x, + paint_session& session, money64 amount, rct_string_id string_id, int32_t y, int32_t z, int8_t y_offsets[], int32_t offset_x, uint32_t rotation) { - auto* ps = session->AllocateStringPaintEntry(); + auto* ps = session.AllocateStringPaintEntry(); if (ps == nullptr) { return; } const CoordsXYZ position = { - session->SpritePosition.x, - session->SpritePosition.y, + session.SpritePosition.x, + session.SpritePosition.y, z, }; const auto coord = translate_3d_to_2d_with_z(rotation, position); diff --git a/src/openrct2/paint/Paint.h b/src/openrct2/paint/Paint.h index f57f461927..0dab2b06b4 100644 --- a/src/openrct2/paint/Paint.h +++ b/src/openrct2/paint/Paint.h @@ -297,64 +297,64 @@ extern bool gPaintBlockedTiles; extern bool gPaintWidePathsAsGhost; paint_struct* PaintAddImageAsParent( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize); + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize); paint_struct* PaintAddImageAsParent( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset); paint_struct* PaintAddImageAsParent( - paint_session* session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize); + paint_session& session, ImageId imageId, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize); paint_struct* PaintAddImageAsParent( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset); [[nodiscard]] paint_struct* PaintAddImageAsOrphan( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset); paint_struct* PaintAddImageAsChild( - paint_session* session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, + paint_session& session, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z); paint_struct* PaintAddImageAsChild( - paint_session* session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, + paint_session& session, uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, const CoordsXYZ& boundBoxOffset); paint_struct* PaintAddImageAsChild( - paint_session* session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, + paint_session& session, ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxLength, const CoordsXYZ& boundBoxOffset); paint_struct* PaintAddImageAsParentRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset); paint_struct* PaintAddImageAsParentRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z); paint_struct* PaintAddImageAsChildRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z); paint_struct* PaintAddImageAsChildRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset); paint_struct* PaintAddImageAsParentRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize); paint_struct* PaintAddImageAsParentRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset); -void paint_util_push_tunnel_rotated(paint_session* session, uint8_t direction, uint16_t height, uint8_t type); +void paint_util_push_tunnel_rotated(paint_session& session, uint8_t direction, uint16_t height, uint8_t type); -bool PaintAttachToPreviousAttach(paint_session* session, ImageId imageId, int32_t x, int32_t y); -bool PaintAttachToPreviousPS(paint_session* session, ImageId image_id, int32_t x, int32_t y); -bool PaintAttachToPreviousPS(paint_session* session, uint32_t image_id, int32_t x, int32_t y); +bool PaintAttachToPreviousAttach(paint_session& session, ImageId imageId, int32_t x, int32_t y); +bool PaintAttachToPreviousPS(paint_session& session, ImageId image_id, int32_t x, int32_t y); +bool PaintAttachToPreviousPS(paint_session& session, uint32_t image_id, int32_t x, int32_t y); void PaintFloatingMoneyEffect( - paint_session* session, money64 amount, rct_string_id string_id, int32_t y, int32_t z, int8_t y_offsets[], int32_t offset_x, + paint_session& session, money64 amount, rct_string_id string_id, int32_t y, int32_t z, int8_t y_offsets[], int32_t offset_x, uint32_t rotation); paint_session* PaintSessionAlloc(rct_drawpixelinfo* dpi, uint32_t viewFlags); void PaintSessionFree(paint_session* session); -void PaintSessionGenerate(paint_session* session); -void PaintSessionArrange(PaintSessionCore* session); -void PaintDrawStructs(paint_session* session); +void PaintSessionGenerate(paint_session& session); +void PaintSessionArrange(PaintSessionCore& session); +void PaintDrawStructs(paint_session& session); void PaintDrawMoneyStructs(rct_drawpixelinfo* dpi, paint_string_struct* ps); // TESTING diff --git a/src/openrct2/paint/PaintHelpers.cpp b/src/openrct2/paint/PaintHelpers.cpp index 243e5bca95..7003c1fb16 100644 --- a/src/openrct2/paint/PaintHelpers.cpp +++ b/src/openrct2/paint/PaintHelpers.cpp @@ -12,7 +12,7 @@ #include "Paint.h" paint_struct* PaintAddImageAsParentRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset) { if (direction & 1) @@ -27,7 +27,7 @@ paint_struct* PaintAddImageAsParentRotated( } paint_struct* PaintAddImageAsParentRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z) { @@ -44,7 +44,7 @@ paint_struct* PaintAddImageAsParentRotated( } paint_struct* PaintAddImageAsParentRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { if (direction & 1) @@ -58,7 +58,7 @@ paint_struct* PaintAddImageAsParentRotated( } paint_struct* PaintAddImageAsParentRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize) { if (direction & 1) @@ -71,7 +71,7 @@ paint_struct* PaintAddImageAsParentRotated( } paint_struct* PaintAddImageAsChildRotated( - paint_session* session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, + paint_session& session, uint8_t direction, uint32_t image_id, int32_t x_offset, int32_t y_offset, int32_t bound_box_length_x, int32_t bound_box_length_y, int32_t bound_box_length_z, int32_t z_offset, int32_t bound_box_offset_x, int32_t bound_box_offset_y, int32_t bound_box_offset_z) { @@ -88,7 +88,7 @@ paint_struct* PaintAddImageAsChildRotated( } paint_struct* PaintAddImageAsChildRotated( - paint_session* session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, + paint_session& session, const uint8_t direction, const uint32_t image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize, const CoordsXYZ& boundBoxOffset) { if (direction & 1) @@ -101,7 +101,7 @@ paint_struct* PaintAddImageAsChildRotated( return PaintAddImageAsChild(session, image_id, offset, boundBoxSize, boundBoxOffset); } -void paint_util_push_tunnel_rotated(paint_session* session, uint8_t direction, uint16_t height, uint8_t type) +void paint_util_push_tunnel_rotated(paint_session& session, uint8_t direction, uint16_t height, uint8_t type) { if (direction & 1) { diff --git a/src/openrct2/paint/Supports.cpp b/src/openrct2/paint/Supports.cpp index 6665763f11..04cd88d291 100644 --- a/src/openrct2/paint/Supports.cpp +++ b/src/openrct2/paint/Supports.cpp @@ -448,13 +448,13 @@ static constexpr const uint16_t word_97B3C4[] = { // clang-format on bool wooden_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) + paint_session& session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) { return wooden_a_supports_paint_setup(session, supportType, special, height, ImageId::FromUInt32(imageColourFlags)); } bool wooden_b_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) + paint_session& session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) { return wooden_a_supports_paint_setup(session, supportType, special, height, ImageId::FromUInt32(imageColourFlags)); } @@ -470,19 +470,19 @@ bool wooden_b_supports_paint_setup( * @returns (al) true if any supports have been drawn, otherwise false. */ bool wooden_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate) + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate) { - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; } - int32_t z = floor2(session->Support.height + 15, 16); + int32_t z = floor2(session.Support.height + 15, 16); height -= z; if (height < 0) { @@ -494,7 +494,7 @@ bool wooden_a_supports_paint_setup( bool drawFlatPiece = false; // Draw base support (usually shaped to the slope) - int32_t slope = session->Support.slope; + int32_t slope = session.Support.slope; if (slope & SUPPORTS_SLOPE_5) { // Above scenery (just put a base piece above it) @@ -558,7 +558,7 @@ bool wooden_a_supports_paint_setup( // Draw repeated supports for left over space while (height != 0) { - if ((z & 16) == 0 && height >= 2 && z + 16 != session->WaterHeight) + if ((z & 16) == 0 && height >= 2 && z + 16 != session.WaterHeight) { // Full support auto imageId = imageTemplate.WithIndex(WoodenSupportImageIds[supportType].full); @@ -592,7 +592,7 @@ bool wooden_a_supports_paint_setup( unk_supports_desc_bound_box bBox = byte_97B23C[special].bounding_box; - if (byte_97B23C[special].var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) + if (byte_97B23C[special].var_6 == 0 || session.WoodenSupportsPrependTo == nullptr) { PaintAddImageAsParent( session, imageId, { 0, 0, z }, bBox.length, { bBox.offset.x, bBox.offset.y, bBox.offset.z + z }); @@ -605,7 +605,7 @@ bool wooden_a_supports_paint_setup( session, imageId, { 0, 0, z }, bBox.length, { bBox.offset.x, bBox.offset.y, bBox.offset.z + z }); if (ps != nullptr) { - session->WoodenSupportsPrependTo->children = ps; + session.WoodenSupportsPrependTo->children = ps; } } } @@ -627,21 +627,21 @@ bool wooden_a_supports_paint_setup( * @return (al) whether supports have been drawn */ bool wooden_b_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate) + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate) { bool _9E32B1 = false; - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; } - uint16_t baseHeight = ceil2(session->Support.height, 16); + uint16_t baseHeight = ceil2(session.Support.height, 16); int16_t supportLength = height - baseHeight; if (supportLength < 0) @@ -653,11 +653,11 @@ bool wooden_b_supports_paint_setup( bool goTo662E8B = false; - if (session->Support.slope & 0x20) + if (session.Support.slope & 0x20) { goTo662E8B = true; } - else if (session->Support.slope & 0x10) + else if (session.Support.slope & 0x10) { heightSteps -= 2; if (heightSteps < 0) @@ -674,7 +674,7 @@ bool wooden_b_supports_paint_setup( else { auto imageid = imageTemplate.WithIndex( - imageIndex + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK]); + imageIndex + word_97B3C4[session.Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK]); PaintAddImageAsParent(session, imageid, { 0, 0, baseHeight }, { 32, 32, 11 }, { 0, 0, baseHeight + 2 }); baseHeight += 16; @@ -686,7 +686,7 @@ bool wooden_b_supports_paint_setup( _9E32B1 = true; } } - else if ((session->Support.slope & 0x0F) != 0) + else if ((session.Support.slope & 0x0F) != 0) { heightSteps -= 1; if (heightSteps < 0) @@ -703,7 +703,7 @@ bool wooden_b_supports_paint_setup( else { auto imageId = imageTemplate.WithIndex( - imageIndex + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK]); + imageIndex + word_97B3C4[session.Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK]); PaintAddImageAsParent(session, imageId, { 0, 0, baseHeight }, { 32, 32, 3 }, { 0, 0, baseHeight + 2 }); baseHeight += 16; @@ -731,7 +731,7 @@ bool wooden_b_supports_paint_setup( { while (heightSteps > 0) { - if (baseHeight & 0x10 || heightSteps == 1 || baseHeight + 16 == session->WaterHeight) + if (baseHeight & 0x10 || heightSteps == 1 || baseHeight + 16 == session.WaterHeight) { auto imageId = imageTemplate.WithIndex(WoodenSupportImageIds[supportType].half); PaintAddImageAsParent(session, imageId, { 0, 0, baseHeight }, { 32, 32, ((heightSteps == 1) ? 7 : 12) }); @@ -763,7 +763,7 @@ bool wooden_b_supports_paint_setup( const unk_supports_desc_bound_box& boundBox = supportsDesc.bounding_box; - if (supportsDesc.var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) + if (supportsDesc.var_6 == 0 || session.WoodenSupportsPrependTo == nullptr) { PaintAddImageAsParent( session, imageId, { 0, 0, baseHeight }, boundBox.length, @@ -778,7 +778,7 @@ bool wooden_b_supports_paint_setup( _9E32B1 = true; if (paintStruct != nullptr) { - session->WoodenSupportsPrependTo->children = paintStruct; + session.WoodenSupportsPrependTo->children = paintStruct; } } } @@ -797,16 +797,16 @@ bool wooden_b_supports_paint_setup( * rct2: 0x00663105 */ bool metal_a_supports_paint_setup( - paint_session* session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags) + paint_session& session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags) { - support_height* supportSegments = session->SupportSegments; + support_height* supportSegments = session.SupportSegments; - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; } @@ -814,7 +814,7 @@ bool metal_a_supports_paint_setup( int16_t originalHeight = height; int32_t originalSegment = segment; - const uint8_t rotation = session->CurrentRotation; + const uint8_t rotation = session.CurrentRotation; int16_t unk9E3294 = -1; if (height < supportSegments[segment].height) { @@ -995,17 +995,17 @@ bool metal_a_supports_paint_setup( * @return (Carry Flag) */ bool metal_b_supports_paint_setup( - paint_session* session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags) + paint_session& session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags) { - support_height* supportSegments = session->SupportSegments; + support_height* supportSegments = session.SupportSegments; uint8_t originalSegment = segment; - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; // AND } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; // AND } @@ -1023,7 +1023,7 @@ bool metal_b_supports_paint_setup( return false; // AND } - uint16_t baseIndex = session->CurrentRotation * 2; + uint16_t baseIndex = session.CurrentRotation * 2; uint8_t ebp = _97AF32[baseIndex + segment * 8]; if (baseHeight <= supportSegments[ebp].height) @@ -1172,7 +1172,7 @@ bool metal_b_supports_paint_setup( * @return Whether supports were drawn */ bool path_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, const FootpathPaintInfo& pathPaintInfo, bool* underground) { if (underground != nullptr) @@ -1180,17 +1180,17 @@ bool path_a_supports_paint_setup( *underground = false; // AND } - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; } - uint16_t baseHeight = ceil2(session->Support.height, 16); + uint16_t baseHeight = ceil2(session.Support.height, 16); int32_t supportLength = height - baseHeight; if (supportLength < 0) { @@ -1203,14 +1203,14 @@ bool path_a_supports_paint_setup( int16_t heightSteps = supportLength / 16; - if (session->Support.slope & 0x20) + if (session.Support.slope & 0x20) { // save dx2 PaintAddImageAsParent( session, imageTemplate.WithIndex(pathPaintInfo.BridgeImageId + 48), { 0, 0, baseHeight - 2 }, { 32, 32, 0 }); hasSupports = true; } - else if (session->Support.slope & 0x10) + else if (session.Support.slope & 0x10) { heightSteps -= 2; if (heightSteps < 0) @@ -1220,7 +1220,7 @@ bool path_a_supports_paint_setup( return false; } - uint32_t imageId = (supportType * 24) + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + uint32_t imageId = (supportType * 24) + word_97B3C4[session.Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + pathPaintInfo.BridgeImageId; PaintAddImageAsParent( @@ -1233,7 +1233,7 @@ bool path_a_supports_paint_setup( hasSupports = true; } - else if (session->Support.slope & 0x0F) + else if (session.Support.slope & 0x0F) { heightSteps -= 1; if (heightSteps < 0) @@ -1243,7 +1243,7 @@ bool path_a_supports_paint_setup( return false; } - uint32_t ebx = (supportType * 24) + word_97B3C4[session->Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + uint32_t ebx = (supportType * 24) + word_97B3C4[session.Support.slope & TILE_ELEMENT_SURFACE_SLOPE_MASK] + pathPaintInfo.BridgeImageId; PaintAddImageAsParent( @@ -1255,7 +1255,7 @@ bool path_a_supports_paint_setup( while (heightSteps > 0) { - if (baseHeight & 0x10 || heightSteps == 1 || baseHeight + 16 == session->WaterHeight) + if (baseHeight & 0x10 || heightSteps == 1 || baseHeight + 16 == session.WaterHeight) { uint32_t imageId = (supportType * 24) + pathPaintInfo.BridgeImageId + 23; @@ -1286,7 +1286,7 @@ bool path_a_supports_paint_setup( const unk_supports_desc& supportsDesc = byte_98D8D4[specialIndex]; const unk_supports_desc_bound_box& boundBox = supportsDesc.bounding_box; - if (supportsDesc.var_6 == 0 || session->WoodenSupportsPrependTo == nullptr) + if (supportsDesc.var_6 == 0 || session.WoodenSupportsPrependTo == nullptr) { PaintAddImageAsParent( session, imageTemplate.WithIndex(imageIndex), { 0, 0, baseHeight }, boundBox.length, @@ -1301,7 +1301,7 @@ bool path_a_supports_paint_setup( hasSupports = true; if (paintStruct != nullptr) { - session->WoodenSupportsPrependTo->children = paintStruct; + session.WoodenSupportsPrependTo->children = paintStruct; } } } @@ -1325,17 +1325,17 @@ bool path_a_supports_paint_setup( * @return Whether supports were drawn */ bool path_b_supports_paint_setup( - paint_session* session, int32_t segment, int32_t special, int32_t height, ImageId imageTemplate, + paint_session& session, int32_t segment, int32_t special, int32_t height, ImageId imageTemplate, const FootpathPaintInfo& pathPaintInfo) { - support_height* supportSegments = session->SupportSegments; + support_height* supportSegments = session.SupportSegments; - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS) { return false; // AND } - if (!(session->Unk141E9DB & PaintSessionFlags::IsPassedSurface)) + if (!(session.Unk141E9DB & PaintSessionFlags::IsPassedSurface)) { return false; // AND } diff --git a/src/openrct2/paint/Supports.h b/src/openrct2/paint/Supports.h index 5c9752e869..35abf8bc78 100644 --- a/src/openrct2/paint/Supports.h +++ b/src/openrct2/paint/Supports.h @@ -18,22 +18,22 @@ struct FootpathPaintInfo; constexpr const uint8_t NumVanillaWoodenSupportTypes = 49; bool wooden_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate); + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate); bool wooden_b_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate); + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate); bool wooden_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags); + paint_session& session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags); bool wooden_b_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags); + paint_session& session, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags); bool metal_a_supports_paint_setup( - paint_session* session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags); + paint_session& session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags); bool metal_b_supports_paint_setup( - paint_session* session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags); + paint_session& session, uint8_t supportType, uint8_t segment, int32_t special, int32_t height, uint32_t imageColourFlags); bool path_a_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, const FootpathPaintInfo& pathPaintInfo, bool* underground); bool path_b_supports_paint_setup( - paint_session* session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, + paint_session& session, int32_t supportType, int32_t special, int32_t height, ImageId imageTemplate, const FootpathPaintInfo& pathPaintInfo); // There are 13 types of metal supports. A graphic showing all of them is available here: diff --git a/src/openrct2/paint/VirtualFloor.cpp b/src/openrct2/paint/VirtualFloor.cpp index d9a0b4c74d..a92f04ece2 100644 --- a/src/openrct2/paint/VirtualFloor.cpp +++ b/src/openrct2/paint/VirtualFloor.cpp @@ -289,7 +289,7 @@ static void virtual_floor_get_tile_properties( } } -void virtual_floor_paint(paint_session* session) +void virtual_floor_paint(paint_session& session) { static constexpr const CoordsXY scenery_half_tile_offsets[4] = { { -COORDS_XY_STEP, 0 }, @@ -301,10 +301,10 @@ void virtual_floor_paint(paint_session* session) if (_virtualFloorHeight < MINIMUM_LAND_HEIGHT) return; - uint8_t direction = session->CurrentRotation; + uint8_t direction = session.CurrentRotation; // This is a virtual floor, so no interactions - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; int16_t virtualFloorClipHeight = _virtualFloorHeight; @@ -318,7 +318,7 @@ void virtual_floor_paint(paint_session* session) uint8_t litEdges = 0; virtual_floor_get_tile_properties( - session->MapPosition, virtualFloorClipHeight, &weAreOccupied, &weAreOwned, &occupiedEdges, &weAreBelowGround, + session.MapPosition, virtualFloorClipHeight, &weAreOccupied, &weAreOwned, &occupiedEdges, &weAreBelowGround, &weAreAboveGround, &weAreLit); // Move the bits around to match the current rotation @@ -331,7 +331,7 @@ void virtual_floor_paint(paint_session* session) for (uint8_t i = 0; i < NumOrthogonalDirections; i++) { uint8_t effectiveRotation = (NumOrthogonalDirections + i - direction) % NumOrthogonalDirections; - CoordsXY theirLocation = session->MapPosition + scenery_half_tile_offsets[effectiveRotation]; + CoordsXY theirLocation = session.MapPosition + scenery_half_tile_offsets[effectiveRotation]; bool theyAreOccupied; uint8_t theirOccupiedEdges; diff --git a/src/openrct2/paint/VirtualFloor.h b/src/openrct2/paint/VirtualFloor.h index f4f02bf086..f09862bd5b 100644 --- a/src/openrct2/paint/VirtualFloor.h +++ b/src/openrct2/paint/VirtualFloor.h @@ -33,4 +33,4 @@ void virtual_floor_invalidate(); bool virtual_floor_tile_is_floor(const CoordsXY& loc); -void virtual_floor_paint(paint_session* session); +void virtual_floor_paint(paint_session& session); diff --git a/src/openrct2/paint/tile_element/Paint.Banner.cpp b/src/openrct2/paint/tile_element/Paint.Banner.cpp index abad962ab6..7c4c0265af 100644 --- a/src/openrct2/paint/tile_element/Paint.Banner.cpp +++ b/src/openrct2/paint/tile_element/Paint.Banner.cpp @@ -30,7 +30,7 @@ constexpr CoordsXY BannerBoundBoxes[][2] = { }; static void PaintBannerScrollingText( - paint_session* session, const BannerSceneryEntry& bannerEntry, Banner& banner, const BannerElement& bannerElement, + paint_session& session, const BannerSceneryEntry& bannerEntry, Banner& banner, const BannerElement& bannerElement, Direction direction, int32_t height, const CoordsXYZ& bbOffset) { // If text on hidden direction or ghost @@ -63,10 +63,10 @@ static void PaintBannerScrollingText( PaintAddImageAsChild(session, imageId, { 0, 0, height + 22 }, { 1, 1, 21 }, bbOffset); } -void PaintBanner(paint_session* session, uint8_t direction, int32_t height, const BannerElement& bannerElement) +void PaintBanner(paint_session& session, uint8_t direction, int32_t height, const BannerElement& bannerElement) { - if (session->DPI.zoom_level > ZoomLevel{ 1 } || gTrackDesignSaveMode - || (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + if (session.DPI.zoom_level > ZoomLevel{ 1 } || gTrackDesignSaveMode + || (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) return; auto banner = bannerElement.GetBanner(); @@ -81,7 +81,7 @@ void PaintBanner(paint_session* session, uint8_t direction, int32_t height, cons return; } - session->InteractionType = ViewportInteractionItem::Banner; + session.InteractionType = ViewportInteractionItem::Banner; height -= 16; @@ -91,7 +91,7 @@ void PaintBanner(paint_session* session, uint8_t direction, int32_t height, cons ImageId imageTemplate; if (bannerElement.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); } else if (OpenRCT2::TileInspector::IsElementSelected(reinterpret_cast(&bannerElement))) diff --git a/src/openrct2/paint/tile_element/Paint.Entrance.cpp b/src/openrct2/paint/tile_element/Paint.Entrance.cpp index 7fc2e8e18f..15f09187f3 100644 --- a/src/openrct2/paint/tile_element/Paint.Entrance.cpp +++ b/src/openrct2/paint/tile_element/Paint.Entrance.cpp @@ -32,7 +32,7 @@ using namespace OpenRCT2; static void PaintRideEntranceExitScrollingText( - paint_session* session, const EntranceElement& entranceEl, const StationObject& stationObj, Direction direction, + paint_session& session, const EntranceElement& entranceEl, const StationObject& stationObj, Direction direction, int32_t height) { if (stationObj.ScrollingMode == SCROLLING_MODE_NONE) @@ -73,39 +73,39 @@ static void PaintRideEntranceExitScrollingText( 0, 28, 28, 51, height + stationObj.Height, 2, 2, height + stationObj.Height); } -static void PaintRideEntranceExitLightEffects(paint_session* session, int32_t height, const EntranceElement& entranceEl) +static void PaintRideEntranceExitLightEffects(paint_session& session, int32_t height, const EntranceElement& entranceEl) { #ifdef __ENABLE_LIGHTFX__ if (lightfx_is_available()) { if (entranceEl.GetEntranceType() == ENTRANCE_TYPE_RIDE_ENTRANCE) { - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 0, 0, height + 45, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, 0, height + 45, LightType::Lantern3); } switch (entranceEl.GetDirection()) { case 0: - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 16, 0, height + 16, LightType::Lantern2); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 16, 0, height + 16, LightType::Lantern2); break; case 1: - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 0, -16, height + 16, LightType::Lantern2); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, -16, height + 16, LightType::Lantern2); break; case 2: - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, -16, 0, height + 16, LightType::Lantern2); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, -16, 0, height + 16, LightType::Lantern2); break; case 3: - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 0, 16, height + 16, LightType::Lantern2); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, 16, height + 16, LightType::Lantern2); break; } } #endif } -static void PaintRideEntranceExit(paint_session* session, uint8_t direction, int32_t height, const EntranceElement& entranceEl) +static void PaintRideEntranceExit(paint_session& session, uint8_t direction, int32_t height, const EntranceElement& entranceEl) { auto rideIndex = entranceEl.GetRideIndex(); - if ((gTrackDesignSaveMode || (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + if ((gTrackDesignSaveMode || (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) && (rideIndex != gTrackDesignSaveRideIndex)) { return; @@ -123,7 +123,7 @@ static void PaintRideEntranceExit(paint_session* session, uint8_t direction, int return; } - session->InteractionType = ViewportInteractionItem::Ride; + session.InteractionType = ViewportInteractionItem::Ride; PaintRideEntranceExitLightEffects(session, height, entranceEl); @@ -139,7 +139,7 @@ static void PaintRideEntranceExit(paint_session* session, uint8_t direction, int if (entranceEl.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); } else if (OpenRCT2::TileInspector::IsElementSelected(reinterpret_cast(&entranceEl))) @@ -200,7 +200,7 @@ static void PaintRideEntranceExit(paint_session* session, uint8_t direction, int } static void PaintParkEntranceScrollingText( - paint_session* session, const EntranceObject& entrance, Direction direction, int32_t height) + paint_session& session, const EntranceObject& entrance, Direction direction, int32_t height) { if ((direction + 1) & (1 << 1)) return; @@ -241,29 +241,29 @@ static void PaintParkEntranceScrollingText( PaintAddImageAsChild(session, ImageId(imageIndex), { 0, 0, textHeight }, { 28, 28, 47 }, { 2, 2, textHeight }); } -static void PaintParkEntranceLightEffects(paint_session* session) +static void PaintParkEntranceLightEffects(paint_session& session) { #ifdef __ENABLE_LIGHTFX__ if (lightfx_is_available()) { - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 0, 0, 155, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, 0, 155, LightType::Lantern3); } #endif } -static void PaintParkEntrance(paint_session* session, uint8_t direction, int32_t height, const EntranceElement& entranceEl) +static void PaintParkEntrance(paint_session& session, uint8_t direction, int32_t height, const EntranceElement& entranceEl) { - if (gTrackDesignSaveMode || (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + if (gTrackDesignSaveMode || (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) return; PaintParkEntranceLightEffects(session); - session->InteractionType = ViewportInteractionItem::ParkEntrance; + session.InteractionType = ViewportInteractionItem::ParkEntrance; ImageId imageTemplate; if (entranceEl.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); } else if (OpenRCT2::TileInspector::IsElementSelected(reinterpret_cast(&entranceEl))) @@ -322,7 +322,7 @@ static void PaintParkEntrance(paint_session* session, uint8_t direction, int32_t paint_util_set_general_support_height(session, height + 80, 0x20); } -static void PaintHeightMarkers(paint_session* session, const EntranceElement& entranceEl, int32_t height) +static void PaintHeightMarkers(paint_session& session, const EntranceElement& entranceEl, int32_t height) { if (PaintShouldShowHeightMarkers(session, VIEWPORT_FLAG_PATH_HEIGHTS)) { @@ -339,9 +339,9 @@ static void PaintHeightMarkers(paint_session* session, const EntranceElement& en } } -void PaintEntrance(paint_session* session, uint8_t direction, int32_t height, const EntranceElement& entranceElement) +void PaintEntrance(paint_session& session, uint8_t direction, int32_t height, const EntranceElement& entranceElement) { - session->InteractionType = ViewportInteractionItem::Label; + session.InteractionType = ViewportInteractionItem::Label; PaintHeightMarkers(session, entranceElement, height); switch (entranceElement.GetEntranceType()) diff --git a/src/openrct2/paint/tile_element/Paint.LargeScenery.cpp b/src/openrct2/paint/tile_element/Paint.LargeScenery.cpp index e27938e935..eaeeb0f7d2 100644 --- a/src/openrct2/paint/tile_element/Paint.LargeScenery.cpp +++ b/src/openrct2/paint/tile_element/Paint.LargeScenery.cpp @@ -56,7 +56,7 @@ static constexpr const boundbox LargeSceneryBoundBoxes[] = { // clang-format on static void PaintLargeScenerySupports( - paint_session* session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement, ImageId imageTemplate, + paint_session& session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement, ImageId imageTemplate, const rct_large_scenery_tile& tile) { if (tile.flags & LARGE_SCENERY_TILE_FLAG_NO_SUPPORTS) @@ -106,7 +106,7 @@ static int32_t DivToMinusInfinity(int32_t a, int32_t b) } static void PaintLargeScenery3DTextLine( - paint_session* session, const LargeSceneryEntry& sceneryEntry, const LargeSceneryText& text, std::string_view line, + paint_session& session, const LargeSceneryEntry& sceneryEntry, const LargeSceneryText& text, std::string_view line, ImageId imageTemplate, Direction direction, int32_t offsetY) { line = LargeSceneryCalculateDisplayText(text, line, false); @@ -179,7 +179,7 @@ static bool Is3DTextSingleLine(const LargeSceneryText& text, std::string_view s) } static void PaintLargeScenery3DText( - paint_session* session, const LargeSceneryEntry& sceneryEntry, const rct_large_scenery_tile& tile, + paint_session& session, const LargeSceneryEntry& sceneryEntry, const rct_large_scenery_tile& tile, const LargeSceneryElement& tileElement, uint8_t direction, uint16_t height, bool isGhost) { if (sceneryEntry.tiles[1].x_offset != -1) @@ -191,7 +191,7 @@ static void PaintLargeScenery3DText( } } - if (session->DPI.zoom_level > ZoomLevel{ 1 }) + if (session.DPI.zoom_level > ZoomLevel{ 1 }) return; auto banner = tileElement.GetBanner(); @@ -291,7 +291,7 @@ static void PaintLargeScenery3DText( } static void PaintLargeSceneryScrollingText( - paint_session* session, const LargeSceneryEntry& sceneryEntry, const LargeSceneryElement& tileElement, uint8_t direction, + paint_session& session, const LargeSceneryEntry& sceneryEntry, const LargeSceneryElement& tileElement, uint8_t direction, uint16_t height, const CoordsXYZ& bbOffset, bool isGhost) { auto textColour = isGhost ? static_cast(COLOUR_GREY) : tileElement.GetSecondaryColour(); @@ -321,9 +321,9 @@ static void PaintLargeSceneryScrollingText( PaintAddImageAsChild(session, imageId, { 0, 0, height + 25 }, { 1, 1, 21 }, bbOffset); } -void PaintLargeScenery(paint_session* session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement) +void PaintLargeScenery(paint_session& session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement) { - if (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) + if (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) return; auto sequenceNum = tileElement.GetSequenceIndex(); @@ -339,7 +339,7 @@ void PaintLargeScenery(paint_session* session, uint8_t direction, uint16_t heigh if (tile == nullptr) return; - session->InteractionType = ViewportInteractionItem::LargeScenery; + session.InteractionType = ViewportInteractionItem::LargeScenery; auto isGhost = false; ImageId imageTemplate; @@ -350,7 +350,7 @@ void PaintLargeScenery(paint_session* session, uint8_t direction, uint16_t heigh } else if (tileElement.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); isGhost = true; } @@ -385,7 +385,7 @@ void PaintLargeScenery(paint_session* session, uint8_t direction, uint16_t heigh { PaintLargeScenery3DText(session, *sceneryEntry, *tile, tileElement, direction, height, isGhost); } - else if (session->DPI.zoom_level <= ZoomLevel{ 0 }) + else if (session.DPI.zoom_level <= ZoomLevel{ 0 }) { auto sequenceDirection2 = (tileElement.GetSequenceIndex() - 1) & 3; if (sequenceDirection2 == direction) diff --git a/src/openrct2/paint/tile_element/Paint.Path.cpp b/src/openrct2/paint/tile_element/Paint.Path.cpp index b2c89cddc3..373444e95a 100644 --- a/src/openrct2/paint/tile_element/Paint.Path.cpp +++ b/src/openrct2/paint/tile_element/Paint.Path.cpp @@ -85,10 +85,10 @@ static constexpr const uint8_t byte_98D8A4[] = { // clang-format on void path_paint_box_support( - paint_session* session, const PathElement& pathElement, int32_t height, const FootpathPaintInfo& pathPaintInfo, + paint_session& session, const PathElement& pathElement, int32_t height, const FootpathPaintInfo& pathPaintInfo, bool hasSupports, ImageId imageTemplate, ImageId sceneryImageTemplate); void path_paint_pole_support( - paint_session* session, const PathElement& pathElement, int16_t height, const FootpathPaintInfo& pathPaintInfo, + paint_session& session, const PathElement& pathElement, int16_t height, const FootpathPaintInfo& pathPaintInfo, bool hasSupports, ImageId imageTemplate, ImageId sceneryImageTemplate); static ImageIndex GetEdgeImageOffset(edge_t edge) @@ -136,7 +136,7 @@ static ImageIndex GetFootpathBenchImage(const PathBitEntry& pathBitEntry, edge_t /* rct2: 0x006A5AE5 */ static void path_bit_lights_paint( - paint_session* session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, + paint_session& session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, ImageId imageTemplate) { if (pathElement.IsSloped()) @@ -169,18 +169,18 @@ static void path_bit_lights_paint( } } -static bool IsBinFull(paint_session* session, const PathElement& pathElement, edge_t edge) +static bool IsBinFull(paint_session& session, const PathElement& pathElement, edge_t edge) { switch (edge) { case EDGE_NE: - return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x03, (2 * session->CurrentRotation))); + return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x03, (2 * session.CurrentRotation))); case EDGE_SE: - return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x0C, (2 * session->CurrentRotation))); + return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x0C, (2 * session.CurrentRotation))); case EDGE_SW: - return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x30, (2 * session->CurrentRotation))); + return !(pathElement.GetAdditionStatus() & Numerics::ror8(0x30, (2 * session.CurrentRotation))); case EDGE_NW: - return !(pathElement.GetAdditionStatus() & Numerics::ror8(0xC0, (2 * session->CurrentRotation))); + return !(pathElement.GetAdditionStatus() & Numerics::ror8(0xC0, (2 * session.CurrentRotation))); default: return false; } @@ -188,14 +188,14 @@ static bool IsBinFull(paint_session* session, const PathElement& pathElement, ed /* rct2: 0x006A5C94 */ static void path_bit_bins_paint( - paint_session* session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, + paint_session& session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, ImageId imageTemplate) { if (pathElement.IsSloped()) height += 8; bool binsAreVandalised = pathElement.IsBroken(); - auto highlightPathIssues = (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) != 0; + auto highlightPathIssues = (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) != 0; if (!(edges & EDGE_NE)) { @@ -235,7 +235,7 @@ static void path_bit_bins_paint( /* rct2: 0x006A5E81 */ static void path_bit_benches_paint( - paint_session* session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, + paint_session& session, const PathBitEntry& pathBitEntry, const PathElement& pathElement, int32_t height, uint8_t edges, ImageId imageTemplate) { auto isBroken = pathElement.IsBroken(); @@ -269,7 +269,7 @@ static void path_bit_benches_paint( /* rct2: 0x006A6008 */ static void path_bit_jumping_fountains_paint( - paint_session* session, const PathBitEntry& pathBitEntry, int32_t height, ImageId imageTemplate, rct_drawpixelinfo* dpi) + paint_session& session, const PathBitEntry& pathBitEntry, int32_t height, ImageId imageTemplate, rct_drawpixelinfo* dpi) { if (dpi->zoom_level > ZoomLevel{ 0 }) return; @@ -286,7 +286,7 @@ static void path_bit_jumping_fountains_paint( * @param tile_element (esi) */ static void sub_6A4101( - paint_session* session, const PathElement& pathElement, uint16_t height, uint32_t connectedEdges, bool hasSupports, + paint_session& session, const PathElement& pathElement, uint16_t height, uint32_t connectedEdges, bool hasSupports, const FootpathPaintInfo& pathPaintInfo, ImageId imageTemplate) { auto imageId = imageTemplate.WithIndex(pathPaintInfo.RailingsImageId); @@ -295,7 +295,7 @@ static void sub_6A4101( uint8_t local_ebp = connectedEdges & 0x0F; if (pathElement.IsSloped()) { - switch ((pathElement.GetSlopeDirection() + session->CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK) + switch ((pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK) { case 0: PaintAddImageAsParent( @@ -410,13 +410,13 @@ static void sub_6A4101( uint8_t direction = pathElement.GetQueueBannerDirection(); // Draw ride sign - session->InteractionType = ViewportInteractionItem::Ride; + session.InteractionType = ViewportInteractionItem::Ride; if (pathElement.IsSloped()) { if (pathElement.GetSlopeDirection() == direction) height += 16; } - direction += session->CurrentRotation; + direction += session.CurrentRotation; direction &= 3; CoordsXYZ boundBoxOffsets = CoordsXYZ(BannerBoundBoxes[direction][0], height + 2); @@ -469,10 +469,10 @@ static void sub_6A4101( 1, 1, 21, height + 7, boundBoxOffsets.x, boundBoxOffsets.y, boundBoxOffsets.z); } - session->InteractionType = ViewportInteractionItem::Footpath; + session.InteractionType = ViewportInteractionItem::Footpath; if (imageTemplate.IsRemap()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; } return; } @@ -488,7 +488,7 @@ static void sub_6A4101( auto slopeRailingsSupported = !(pathPaintInfo.SurfaceFlags & FOOTPATH_ENTRY_FLAG_NO_SLOPE_RAILINGS); if ((hasSupports || slopeRailingsSupported) && pathElement.IsSloped()) { - switch ((pathElement.GetSlopeDirection() + session->CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK) + switch ((pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK) { case 0: PaintAddImageAsParent( @@ -705,7 +705,7 @@ static void sub_6A4101( * @param sceneryImageFlags (0x00F3EF74) */ static void sub_6A3F61( - paint_session* session, const PathElement& pathElement, uint16_t connectedEdges, uint16_t height, + paint_session& session, const PathElement& pathElement, uint16_t connectedEdges, uint16_t height, const FootpathPaintInfo& pathPaintInfo, ImageId imageTemplate, ImageId sceneryImageTemplate, bool hasSupports) { // eax -- @@ -719,7 +719,7 @@ static void sub_6A3F61( // Probably drawing benches etc. - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (dpi->zoom_level <= ZoomLevel{ 1 }) { @@ -729,10 +729,10 @@ static void sub_6A3F61( { if (pathElement.HasAddition()) { - session->InteractionType = ViewportInteractionItem::FootpathItem; + session.InteractionType = ViewportInteractionItem::FootpathItem; if (sceneryImageTemplate.IsRemap()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; } // Draw additional path bits (bins, benches, lamps, queue screens) @@ -744,7 +744,7 @@ static void sub_6A3F61( paintScenery = false; } else if ( - (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) && !(pathElement.IsBroken()) + (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) && !(pathElement.IsBroken()) && pathAddEntry->draw_type != PathBitDrawType::Bin) { paintScenery = false; @@ -773,11 +773,11 @@ static void sub_6A3F61( break; } - session->InteractionType = ViewportInteractionItem::Footpath; + session.InteractionType = ViewportInteractionItem::Footpath; if (sceneryImageTemplate.IsRemap()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; } } } @@ -790,7 +790,7 @@ static void sub_6A3F61( } // This is about tunnel drawing - uint8_t direction = (pathElement.GetSlopeDirection() + session->CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK; + uint8_t direction = (pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK; bool sloped = pathElement.IsSloped(); if (connectedEdges & EDGE_SE) @@ -861,9 +861,9 @@ static FootpathPaintInfo GetFootpathPaintInfo(const PathElement& pathEl) return pathPaintInfo; } -static bool ShouldDrawSupports(paint_session* session, const PathElement& pathEl, uint16_t height) +static bool ShouldDrawSupports(paint_session& session, const PathElement& pathEl, uint16_t height) { - auto surface = map_get_surface_element_at(session->MapPosition); + auto surface = map_get_surface_element_at(session.MapPosition); if (surface == nullptr) { return true; @@ -891,7 +891,7 @@ static bool ShouldDrawSupports(paint_session* session, const PathElement& pathEl return false; } -static void PaintPatrolAreas(paint_session* session, const PathElement& pathEl) +static void PaintPatrolAreas(paint_session& session, const PathElement& pathEl) { if (gStaffDrawPatrolAreas != 0xFFFF) { @@ -909,7 +909,7 @@ static void PaintPatrolAreas(paint_session* session, const PathElement& pathEl) } else { - if (!staff->IsPatrolAreaSet(session->MapPosition)) + if (!staff->IsPatrolAreaSet(session.MapPosition)) { patrolColour = COLOUR_GREY; } @@ -917,13 +917,13 @@ static void PaintPatrolAreas(paint_session* session, const PathElement& pathEl) } } - if (staff_is_patrol_area_set_for_type(staffType, session->MapPosition)) + if (staff_is_patrol_area_set_for_type(staffType, session.MapPosition)) { uint32_t baseImageIndex = SPR_TERRAIN_STAFF; auto patrolAreaBaseZ = pathEl.GetBaseZ(); if (pathEl.IsSloped()) { - baseImageIndex = SPR_TERRAIN_STAFF_SLOPED + ((pathEl.GetSlopeDirection() + session->CurrentRotation) & 3); + baseImageIndex = SPR_TERRAIN_STAFF_SLOPED + ((pathEl.GetSlopeDirection() + session.CurrentRotation) & 3); patrolAreaBaseZ += 16; } @@ -933,7 +933,7 @@ static void PaintPatrolAreas(paint_session* session, const PathElement& pathEl) } } -static void PaintHeightMarkers(paint_session* session, const PathElement& pathEl) +static void PaintHeightMarkers(paint_session& session, const PathElement& pathEl) { if (PaintShouldShowHeightMarkers(session, VIEWPORT_FLAG_PATH_HEIGHTS)) { @@ -952,7 +952,7 @@ static void PaintHeightMarkers(paint_session* session, const PathElement& pathEl } } -static void PaintLampLightEffects(paint_session* session, const PathElement& pathEl, uint16_t height) +static void PaintLampLightEffects(paint_session& session, const PathElement& pathEl, uint16_t height) { #ifdef __ENABLE_LIGHTFX__ if (lightfx_is_available()) @@ -964,21 +964,19 @@ static void PaintLampLightEffects(paint_session* session, const PathElement& pat { if (!(pathEl.GetEdges() & EDGE_NE)) { - lightfx_add_3d_light_magic_from_drawing_tile( - session->MapPosition, -16, 0, height + 23, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, -16, 0, height + 23, LightType::Lantern3); } if (!(pathEl.GetEdges() & EDGE_SE)) { - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 0, 16, height + 23, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, 16, height + 23, LightType::Lantern3); } if (!(pathEl.GetEdges() & EDGE_SW)) { - lightfx_add_3d_light_magic_from_drawing_tile(session->MapPosition, 16, 0, height + 23, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 16, 0, height + 23, LightType::Lantern3); } if (!(pathEl.GetEdges() & EDGE_NW)) { - lightfx_add_3d_light_magic_from_drawing_tile( - session->MapPosition, 0, -16, height + 23, LightType::Lantern3); + lightfx_add_3d_light_magic_from_drawing_tile(session.MapPosition, 0, -16, height + 23, LightType::Lantern3); } } } @@ -989,9 +987,9 @@ static void PaintLampLightEffects(paint_session* session, const PathElement& pat /** * rct2: 0x0006A3590 */ -void PaintPath(paint_session* session, uint16_t height, const PathElement& tileElement) +void PaintPath(paint_session& session, uint16_t height, const PathElement& tileElement) { - session->InteractionType = ViewportInteractionItem::Footpath; + session.InteractionType = ViewportInteractionItem::Footpath; ImageId imageTemplate, sceneryImageTemplate; if (gTrackDesignSaveMode) @@ -1008,7 +1006,7 @@ void PaintPath(paint_session* session, uint16_t height, const PathElement& tileE } } - if (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) + if (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) { imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette46); } @@ -1020,7 +1018,7 @@ void PaintPath(paint_session* session, uint16_t height, const PathElement& tileE if (tileElement.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); } else if (TileInspector::IsElementSelected(reinterpret_cast(&tileElement))) @@ -1059,15 +1057,15 @@ void PaintPath(paint_session* session, uint16_t height, const PathElement& tileE } void path_paint_box_support( - paint_session* session, const PathElement& pathElement, int32_t height, const FootpathPaintInfo& pathPaintInfo, + paint_session& session, const PathElement& pathElement, int32_t height, const FootpathPaintInfo& pathPaintInfo, bool hasSupports, ImageId imageTemplate, ImageId sceneryImageTemplate) { // Rol edges around rotation - uint8_t edges = ((pathElement.GetEdges() << session->CurrentRotation) & 0xF) - | (((pathElement.GetEdges()) << session->CurrentRotation) >> 4); + uint8_t edges = ((pathElement.GetEdges() << session.CurrentRotation) & 0xF) + | (((pathElement.GetEdges()) << session.CurrentRotation) >> 4); - uint8_t corners = (((pathElement.GetCorners()) << session->CurrentRotation) & 0xF) - | (((pathElement.GetCorners()) << session->CurrentRotation) >> 4); + uint8_t corners = (((pathElement.GetCorners()) << session.CurrentRotation) & 0xF) + | (((pathElement.GetCorners()) << session.CurrentRotation) >> 4); CoordsXY boundBoxOffset = { stru_98D804[edges][0], stru_98D804[edges][1] }; CoordsXY boundBoxSize = { stru_98D804[edges][2], stru_98D804[edges][3] }; @@ -1077,7 +1075,7 @@ void path_paint_box_support( ImageIndex surfaceBaseImageIndex = pathPaintInfo.SurfaceImageId; if (pathElement.IsSloped()) { - auto directionOffset = (pathElement.GetSlopeDirection() + session->CurrentRotation) + auto directionOffset = (pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK; surfaceBaseImageIndex += 16 + directionOffset; } @@ -1086,7 +1084,7 @@ void path_paint_box_support( surfaceBaseImageIndex += byte_98D6E0[edi]; } - if (!session->DidPassSurface) + if (!session.DidPassSurface) { boundBoxOffset.x = 3; boundBoxOffset.y = 3; @@ -1099,15 +1097,15 @@ void path_paint_box_support( // If we are on the same tile as a straight track, add the offset 2 so we // can clip above gravel part of the track sprite - if (session->TrackElementOnSameHeight != nullptr) + if (session.TrackElementOnSameHeight != nullptr) { - if (session->TrackElementOnSameHeight->AsTrack()->GetTrackType() == TrackElemType::Flat) + if (session.TrackElementOnSameHeight->AsTrack()->GetTrackType() == TrackElemType::Flat) { boundingBoxZOffset = 2; } } - if (!hasSupports || !session->DidPassSurface) + if (!hasSupports || !session.DidPassSurface) { PaintAddImageAsParent( session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height }, { boundBoxSize, 0 }, @@ -1119,7 +1117,7 @@ void path_paint_box_support( if (pathElement.IsSloped()) { auto directionOffset - = ((pathElement.GetSlopeDirection() + session->CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK); + = ((pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK); bridgeBaseImageIndex = pathPaintInfo.BridgeImageId + 51 + directionOffset; } else @@ -1144,7 +1142,7 @@ void path_paint_box_support( uint16_t ax = 0; if (pathElement.IsSloped()) { - ax = ((pathElement.GetSlopeDirection() + session->CurrentRotation) & 0x3) + 1; + ax = ((pathElement.GetSlopeDirection() + session.CurrentRotation) & 0x3) + 1; } auto supportType = byte_98D8A4[edges] == 0 ? 0 : 1; @@ -1194,19 +1192,19 @@ void path_paint_box_support( } void path_paint_pole_support( - paint_session* session, const PathElement& pathElement, int16_t height, const FootpathPaintInfo& pathPaintInfo, + paint_session& session, const PathElement& pathElement, int16_t height, const FootpathPaintInfo& pathPaintInfo, bool hasSupports, ImageId imageTemplate, ImageId sceneryImageTemplate) { // Rol edges around rotation - uint8_t edges = ((pathElement.GetEdges() << session->CurrentRotation) & 0xF) - | (((pathElement.GetEdges()) << session->CurrentRotation) >> 4); + uint8_t edges = ((pathElement.GetEdges() << session.CurrentRotation) & 0xF) + | (((pathElement.GetEdges()) << session.CurrentRotation) >> 4); CoordsXY boundBoxOffset = { stru_98D804[edges][0], stru_98D804[edges][1] }; CoordsXY boundBoxSize = { stru_98D804[edges][2], stru_98D804[edges][3] }; - uint8_t corners = (((pathElement.GetCorners()) << session->CurrentRotation) & 0xF) - | (((pathElement.GetCorners()) << session->CurrentRotation) >> 4); + uint8_t corners = (((pathElement.GetCorners()) << session.CurrentRotation) & 0xF) + | (((pathElement.GetCorners()) << session.CurrentRotation) >> 4); uint16_t edi = edges | (corners << 4); @@ -1214,7 +1212,7 @@ void path_paint_pole_support( if (pathElement.IsSloped()) { auto directionOffset - = ((pathElement.GetSlopeDirection() + session->CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK); + = ((pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK); surfaceBaseImageIndex += 16 + directionOffset; } else @@ -1223,7 +1221,7 @@ void path_paint_pole_support( } // Below Surface - if (!session->DidPassSurface) + if (!session.DidPassSurface) { boundBoxOffset.x = 3; boundBoxOffset.y = 3; @@ -1236,15 +1234,15 @@ void path_paint_pole_support( // If we are on the same tile as a straight track, add the offset 2 so we // can clip above gravel part of the track sprite - if (session->TrackElementOnSameHeight != nullptr) + if (session.TrackElementOnSameHeight != nullptr) { - if (session->TrackElementOnSameHeight->AsTrack()->GetTrackType() == TrackElemType::Flat) + if (session.TrackElementOnSameHeight->AsTrack()->GetTrackType() == TrackElemType::Flat) { boundingBoxZOffset = 2; } } - if (!hasSupports || !session->DidPassSurface) + if (!hasSupports || !session.DidPassSurface) { PaintAddImageAsParent( session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height }, { boundBoxSize.x, boundBoxSize.y, 0 }, @@ -1255,7 +1253,7 @@ void path_paint_pole_support( ImageIndex bridgeBaseImageIndex; if (pathElement.IsSloped()) { - bridgeBaseImageIndex = ((pathElement.GetSlopeDirection() + session->CurrentRotation) + bridgeBaseImageIndex = ((pathElement.GetSlopeDirection() + session.CurrentRotation) & FOOTPATH_PROPERTIES_SLOPE_DIRECTION_MASK) + pathPaintInfo.BridgeImageId + 16; } diff --git a/src/openrct2/paint/tile_element/Paint.SmallScenery.cpp b/src/openrct2/paint/tile_element/Paint.SmallScenery.cpp index 92e2da1e03..4d8b8bbb1b 100644 --- a/src/openrct2/paint/tile_element/Paint.SmallScenery.cpp +++ b/src/openrct2/paint/tile_element/Paint.SmallScenery.cpp @@ -30,7 +30,7 @@ static constexpr const CoordsXY lengths[] = { }; static void PaintSmallScenerySupports( - paint_session* session, const SmallSceneryEntry& sceneryEntry, const SmallSceneryElement& sceneryElement, + paint_session& session, const SmallSceneryEntry& sceneryEntry, const SmallSceneryElement& sceneryElement, Direction direction, int32_t height, ImageId imageTemplate) { if (!sceneryElement.NeedsSupports()) @@ -62,7 +62,7 @@ static void PaintSmallScenerySupports( } static void SetSupportHeights( - paint_session* session, const SmallSceneryEntry& sceneryEntry, const SmallSceneryElement& sceneryElement, int32_t height) + paint_session& session, const SmallSceneryEntry& sceneryEntry, const SmallSceneryElement& sceneryElement, int32_t height) { height += sceneryEntry.height; @@ -79,7 +79,7 @@ static void SetSupportHeights( } else if (sceneryEntry.HasFlag(SMALL_SCENERY_FLAG_VOFFSET_CENTRE)) { - auto direction = (sceneryElement.GetSceneryQuadrant() + session->CurrentRotation) % 4; + auto direction = (sceneryElement.GetSceneryQuadrant() + session.CurrentRotation) % 4; paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C8 | SEGMENT_CC, direction), height, 0x20); } @@ -94,7 +94,7 @@ static void SetSupportHeights( } else if (sceneryEntry.HasFlag(SMALL_SCENERY_FLAG_VOFFSET_CENTRE)) { - auto direction = (sceneryElement.GetSceneryQuadrant() + session->CurrentRotation) % 4; + auto direction = (sceneryElement.GetSceneryQuadrant() + session.CurrentRotation) % 4; paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); } @@ -104,9 +104,9 @@ static void SetSupportHeights( * * rct2: 0x006DFF47 */ -void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height, const SmallSceneryElement& sceneryElement) +void PaintSmallScenery(paint_session& session, uint8_t direction, int32_t height, const SmallSceneryElement& sceneryElement) { - if (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) + if (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES) { return; } @@ -117,7 +117,7 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height return; } - session->InteractionType = ViewportInteractionItem::Scenery; + session.InteractionType = ViewportInteractionItem::Scenery; CoordsXYZ boxLength; CoordsXYZ boxOffset{ 0, 0, height }; ImageId imageTemplate; @@ -130,7 +130,7 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height } if (sceneryElement.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); } else if (OpenRCT2::TileInspector::IsElementSelected(reinterpret_cast(&sceneryElement))) @@ -183,7 +183,7 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height } else { - uint8_t quadrant = (sceneryElement.GetSceneryQuadrant() + session->CurrentRotation) & 3; + uint8_t quadrant = (sceneryElement.GetSceneryQuadrant() + session.CurrentRotation) & 3; offset.x = SceneryQuadrantOffsets[quadrant].x; offset.y = SceneryQuadrantOffsets[quadrant].y; boxOffset.x = offset.x; @@ -230,7 +230,7 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height if (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_ANIMATED)) { - if (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_VISIBLE_WHEN_ZOOMED) || (session->DPI.zoom_level <= ZoomLevel{ 1 })) + if (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_VISIBLE_WHEN_ZOOMED) || (session.DPI.zoom_level <= ZoomLevel{ 1 })) { if (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_FOUNTAIN_SPRAY_1)) { @@ -282,8 +282,8 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height else if (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_SWAMP_GOO)) { auto imageIndex = gCurrentTicks; - imageIndex += session->SpritePosition.x / 4; - imageIndex += session->SpritePosition.y / 4; + imageIndex += session.SpritePosition.x / 4; + imageIndex += session.SpritePosition.y / 4; imageIndex = sceneryEntry->image + ((imageIndex / 4) % 16); PaintAddImageAsChild(session, imageTemplate.WithIndex(imageIndex), offset, boxLength, boxOffset); } @@ -293,7 +293,7 @@ void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height auto frame = gCurrentTicks; if (!(sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_COG))) { - frame += ((session->SpritePosition.x / 4) + (session->SpritePosition.y / 4)); + frame += ((session.SpritePosition.x / 4) + (session.SpritePosition.y / 4)); frame += sceneryElement.GetSceneryQuadrant() << 2; } frame = (frame >> delay) & sceneryEntry->animation_mask; diff --git a/src/openrct2/paint/tile_element/Paint.Surface.cpp b/src/openrct2/paint/tile_element/Paint.Surface.cpp index 86927735a8..772f630655 100644 --- a/src/openrct2/paint/tile_element/Paint.Surface.cpp +++ b/src/openrct2/paint/tile_element/Paint.Surface.cpp @@ -314,7 +314,7 @@ static const TerrainSurfaceObject* get_surface_object(size_t index) } static ImageId get_surface_image( - const paint_session* session, ObjectEntryIndex index, int32_t offset, uint8_t rotation, int32_t grassLength, bool grid, + const paint_session& session, ObjectEntryIndex index, int32_t offset, uint8_t rotation, int32_t grassLength, bool grid, bool underground) { ImageId image; @@ -322,7 +322,7 @@ static ImageId get_surface_image( if (obj != nullptr) { image = ImageId(obj->GetImageId( - { session->MapPosition.x >> 5, session->MapPosition.y >> 5 }, grassLength, rotation, offset, grid, underground)); + { session.MapPosition.x >> 5, session.MapPosition.y >> 5 }, grassLength, rotation, offset, grid, underground)); if (obj->Colour != 255) { image = image.WithPrimary(obj->Colour); @@ -434,7 +434,7 @@ static uint8_t viewport_surface_paint_setup_get_relative_slope(const SurfaceElem * rct2: 0x0065E890, 0x0065E946, 0x0065E9FC, 0x0065EAB2 */ static void viewport_surface_smoothen_edge( - paint_session* session, enum edge_t edge, struct tile_descriptor self, struct tile_descriptor neighbour) + paint_session& session, enum edge_t edge, struct tile_descriptor self, struct tile_descriptor neighbour) { if (neighbour.tile_element == nullptr) return; @@ -527,7 +527,7 @@ static void viewport_surface_smoothen_edge( if (PaintAttachToPreviousPS(session, image_id, 0, 0)) { - attached_paint_struct* out = session->LastAttachedPS; + attached_paint_struct* out = session.LastAttachedPS; // set content and enable masking out->colour_image_id = get_surface_pattern(neighbour.terrain, cl); out->flags |= PAINT_STRUCT_FLAG_IS_MASKED; @@ -552,7 +552,7 @@ static bool tile_is_inside_clip_view(const tile_descriptor& tile) } static void viewport_surface_draw_tile_side_bottom( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, struct tile_descriptor neighbour, bool isWater) { // From big Z to tiny Z @@ -579,7 +579,7 @@ static void viewport_surface_draw_tile_side_bottom( tunnelBounds.x = 32; tunnelTopBoundBoxOffset.y = 31; - tunnelArray = session->LeftTunnels; + tunnelArray = session.LeftTunnels; break; case EDGE_BOTTOMRIGHT: @@ -594,14 +594,14 @@ static void viewport_surface_draw_tile_side_bottom( tunnelBounds.y = 32; tunnelTopBoundBoxOffset.x = 31; - tunnelArray = session->RightTunnels; + tunnelArray = session.RightTunnels; break; default: return; } - bool neighbourIsClippedAway = (session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && !tile_is_inside_clip_view(neighbour); + bool neighbourIsClippedAway = (session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && !tile_is_inside_clip_view(neighbour); if (neighbour.tile_element == nullptr || neighbourIsClippedAway) { @@ -630,7 +630,7 @@ static void viewport_surface_draw_tile_side_bottom( } auto baseImageId = get_edge_image(edgeStyle, 0); - if (session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) + if (session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) { baseImageId = get_edge_image(edgeStyle, 1); } @@ -749,7 +749,7 @@ static void viewport_surface_draw_tile_side_bottom( * rct2: 0x0065EB7D, 0x0065F0D8 */ static void viewport_surface_draw_land_side_bottom( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, struct tile_descriptor neighbour) { viewport_surface_draw_tile_side_bottom(session, edge, height, edgeStyle, self, neighbour, false); @@ -759,14 +759,14 @@ static void viewport_surface_draw_land_side_bottom( * rct2: 0x0065F8B9, 0x0065FE26 */ static void viewport_surface_draw_water_side_bottom( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t edgeStyle, struct tile_descriptor self, struct tile_descriptor neighbour) { viewport_surface_draw_tile_side_bottom(session, edge, height, edgeStyle, self, neighbour, true); } static void viewport_surface_draw_tile_side_top( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, struct tile_descriptor neighbour, bool isWater) { // From big Z to tiny Z @@ -835,7 +835,7 @@ static void viewport_surface_draw_tile_side_top( if (isWater) { baseImageId = get_edge_image(terrain, 2); // var_08 - if (session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) + if (session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) { baseImageId = get_edge_image(terrain, 1); // var_04 } @@ -843,7 +843,7 @@ static void viewport_surface_draw_tile_side_top( } else { - if (!(session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE)) + if (!(session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE)) { const uint8_t incline = (cornerHeight2 - cornerHeight1) + 1; const auto imageId = get_edge_image(terrain, 3).WithIndexOffset((edge == EDGE_TOPLEFT ? 3 : 0) + incline); @@ -906,7 +906,7 @@ static void viewport_surface_draw_tile_side_top( * rct2: 0x0065F63B, 0x0065F77D */ static void viewport_surface_draw_land_side_top( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, struct tile_descriptor neighbour) { viewport_surface_draw_tile_side_top(session, edge, height, terrain, self, neighbour, false); @@ -916,7 +916,7 @@ static void viewport_surface_draw_land_side_top( * rct2: 0x0066039B, 0x006604F1 */ static void viewport_surface_draw_water_side_top( - paint_session* session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, + paint_session& session, enum edge_t edge, uint16_t height, uint8_t terrain, struct tile_descriptor self, struct tile_descriptor neighbour) { viewport_surface_draw_tile_side_top(session, edge, height, terrain, self, neighbour, true); @@ -953,18 +953,18 @@ static std::pair surface_get_height_above_water( /** * rct2: 0x0066062C */ -void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, const SurfaceElement& tileElement) +void PaintSurface(paint_session& session, uint8_t direction, uint16_t height, const SurfaceElement& tileElement) { - rct_drawpixelinfo* dpi = &session->DPI; - session->InteractionType = ViewportInteractionItem::Terrain; - session->DidPassSurface = true; - session->SurfaceElement = reinterpret_cast(&tileElement); + rct_drawpixelinfo* dpi = &session.DPI; + session.InteractionType = ViewportInteractionItem::Terrain; + session.DidPassSurface = true; + session.SurfaceElement = reinterpret_cast(&tileElement); const auto zoomLevel = dpi->zoom_level; - const uint8_t rotation = session->CurrentRotation; + const uint8_t rotation = session.CurrentRotation; const auto terrain_type = tileElement.GetSurfaceStyle(); const uint8_t surfaceShape = viewport_surface_paint_setup_get_relative_slope(tileElement, rotation); - const CoordsXY& base = session->SpritePosition; + const CoordsXY& base = session.SpritePosition; const corner_height& cornerHeights = corner_heights[surfaceShape]; const TileElement* elementPtr = &reinterpret_cast(tileElement); @@ -1019,8 +1019,8 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co if (PaintShouldShowHeightMarkers(session, VIEWPORT_FLAG_LAND_HEIGHTS)) { - const int16_t x = session->MapPosition.x; - const int16_t y = session->MapPosition.y; + const int16_t x = session.MapPosition.x; + const int16_t y = session.MapPosition.y; int32_t dx = tile_element_height({ x + 16, y + 16 }); dx += 3; @@ -1033,7 +1033,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } bool has_surface = false; - if (session->VerticalTunnelHeight * COORDS_Z_PER_TINY_Z == height) + if (session.VerticalTunnelHeight * COORDS_Z_PER_TINY_Z == height) { // Vertical tunnels PaintAddImageAsParent(session, 1575, { 0, 0, height }, { 1, 30, 39 }, { -2, 1, height - 40 }); @@ -1043,12 +1043,12 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } else { - const bool showGridlines = (session->ViewFlags & VIEWPORT_FLAG_GRIDLINES); + const bool showGridlines = (session.ViewFlags & VIEWPORT_FLAG_GRIDLINES); auto grassLength = -1; if (zoomLevel <= ZoomLevel{ 0 }) { - if ((session->ViewFlags & (VIEWPORT_FLAG_HIDE_BASE | VIEWPORT_FLAG_UNDERGROUND_INSIDE)) == 0) + if ((session.ViewFlags & (VIEWPORT_FLAG_HIDE_BASE | VIEWPORT_FLAG_UNDERGROUND_INSIDE)) == 0) { grassLength = tileElement.GetGrassLength() & 0x7; } @@ -1066,7 +1066,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co { imageId = get_surface_image(session, terrain_type, image_offset, rotation, grassLength, showGridlines, false); } - if (session->ViewFlags & (VIEWPORT_FLAG_UNDERGROUND_INSIDE | VIEWPORT_FLAG_HIDE_BASE)) + if (session.ViewFlags & (VIEWPORT_FLAG_UNDERGROUND_INSIDE | VIEWPORT_FLAG_HIDE_BASE)) { imageId = imageId.WithTransparancy(FilterPaletteID::PaletteDarken1); } @@ -1086,7 +1086,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co { const int32_t staffIndex = gStaffDrawPatrolAreas; const bool is_staff_list = staffIndex & 0x8000; - const int16_t x = session->MapPosition.x, y = session->MapPosition.y; + const int16_t x = session.MapPosition.x, y = session.MapPosition.y; uint8_t staffType = staffIndex & 0x7FFF; uint32_t image_id = IMAGE_TYPE_REMAP; @@ -1109,7 +1109,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } } - if (staff_is_patrol_area_set_for_type(static_cast(staffType), session->MapPosition)) + if (staff_is_patrol_area_set_for_type(static_cast(staffType), session.MapPosition)) { assert(surfaceShape < std::size(byte_97B444)); @@ -1117,17 +1117,17 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co image_id |= SPR_TERRAIN_SELECTION_PATROL_AREA + byte_97B444[local_surfaceShape]; image_id |= patrolColour << 19; - paint_struct* backup = session->LastPS; + paint_struct* backup = session.LastPS; PaintAddImageAsParent(session, image_id, { 0, 0, local_height }, { 32, 32, 1 }); - session->LastPS = backup; + session.LastPS = backup; } } // Draw Peep Spawns if (((gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR) || gCheatsSandboxMode) - && session->ViewFlags & VIEWPORT_FLAG_LAND_OWNERSHIP) + && session.ViewFlags & VIEWPORT_FLAG_LAND_OWNERSHIP) { - const CoordsXY& pos = session->MapPosition; + const CoordsXY& pos = session.MapPosition; for (auto& spawn : gPeepSpawns) { if ((spawn.x & 0xFFE0) == pos.x && (spawn.y & 0xFFE0) == pos.y) @@ -1141,7 +1141,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } } - if (session->ViewFlags & VIEWPORT_FLAG_LAND_OWNERSHIP) + if (session.ViewFlags & VIEWPORT_FLAG_LAND_OWNERSHIP) { // loc_660E9A: if (tileElement.GetOwnership() & OWNERSHIP_OWNED) @@ -1151,15 +1151,15 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } else if (tileElement.GetOwnership() & OWNERSHIP_AVAILABLE) { - const CoordsXY& pos = session->MapPosition; + const CoordsXY& pos = session.MapPosition; const int32_t height2 = (tile_element_height({ pos.x + 16, pos.y + 16 })) + 3; - paint_struct* backup = session->LastPS; + paint_struct* backup = session.LastPS; PaintAddImageAsParent(session, SPR_LAND_OWNERSHIP_AVAILABLE, { 16, 16, height2 }, { 1, 1, 0 }); - session->LastPS = backup; + session.LastPS = backup; } } - if (session->ViewFlags & VIEWPORT_FLAG_CONSTRUCTION_RIGHTS && !(tileElement.GetOwnership() & OWNERSHIP_OWNED)) + if (session.ViewFlags & VIEWPORT_FLAG_CONSTRUCTION_RIGHTS && !(tileElement.GetOwnership() & OWNERSHIP_OWNED)) { if (tileElement.GetOwnership() & OWNERSHIP_CONSTRUCTION_RIGHTS_OWNED) { @@ -1168,11 +1168,11 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } else if (tileElement.GetOwnership() & OWNERSHIP_CONSTRUCTION_RIGHTS_AVAILABLE) { - const CoordsXY& pos = session->MapPosition; + const CoordsXY& pos = session.MapPosition; const int32_t height2 = tile_element_height({ pos.x + 16, pos.y + 16 }); - paint_struct* backup = session->LastPS; + paint_struct* backup = session.LastPS; PaintAddImageAsParent(session, SPR_LAND_CONSTRUCTION_RIGHTS_AVAILABLE, { 16, 16, height2 + 3 }, { 1, 1, 0 }); - session->LastPS = backup; + session.LastPS = backup; } } @@ -1183,7 +1183,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co if (gMapSelectFlags & MAP_SELECT_FLAG_ENABLE) { // loc_660FB8: - const CoordsXY& pos = session->MapPosition; + const CoordsXY& pos = session.MapPosition; if (pos.x >= gMapSelectPositionA.x && pos.x <= gMapSelectPositionB.x && pos.y >= gMapSelectPositionA.y && pos.y <= gMapSelectPositionB.y) { @@ -1224,16 +1224,16 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co const int32_t image_id = (SPR_TERRAIN_SELECTION_CORNER + byte_97B444[local_surfaceShape]) | 0x21300000; - paint_struct* backup = session->LastPS; + paint_struct* backup = session.LastPS; PaintAddImageAsParent(session, image_id, { 0, 0, local_height }, { 32, 32, 1 }); - session->LastPS = backup; + session.LastPS = backup; } } } if (gMapSelectFlags & MAP_SELECT_FLAG_ENABLE_CONSTRUCT) { - const CoordsXY& pos = session->MapPosition; + const CoordsXY& pos = session.MapPosition; for (const auto& tile : gMapSelectionTiles) { @@ -1254,8 +1254,8 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } } - if (zoomLevel <= ZoomLevel{ 0 } && has_surface && !(session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) - && !(session->ViewFlags & VIEWPORT_FLAG_HIDE_BASE) && gConfigGeneral.landscape_smoothing) + if (zoomLevel <= ZoomLevel{ 0 } && has_surface && !(session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) + && !(session.ViewFlags & VIEWPORT_FLAG_HIDE_BASE) && gConfigGeneral.landscape_smoothing) { viewport_surface_smoothen_edge(session, EDGE_TOPLEFT, tileDescriptors[0], tileDescriptors[3]); viewport_surface_smoothen_edge(session, EDGE_TOPRIGHT, tileDescriptors[0], tileDescriptors[4]); @@ -1263,7 +1263,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co viewport_surface_smoothen_edge(session, EDGE_BOTTOMRIGHT, tileDescriptors[0], tileDescriptors[2]); } - if ((session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) && !(session->ViewFlags & VIEWPORT_FLAG_HIDE_BASE) + if ((session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE) && !(session.ViewFlags & VIEWPORT_FLAG_HIDE_BASE) && !(gScreenFlags & (SCREEN_FLAGS_TRACK_DESIGNER | SCREEN_FLAGS_TRACK_MANAGER))) { const uint8_t image_offset = byte_97B444[surfaceShape]; @@ -1271,7 +1271,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co PaintAttachToPreviousPS(session, imageId, 0, 0); } - if (!(session->ViewFlags & VIEWPORT_FLAG_HIDE_VERTICAL)) + if (!(session.ViewFlags & VIEWPORT_FLAG_HIDE_VERTICAL)) { const auto edgeStyle = tileElement.GetEdgeStyle(); if (static_cast(edgeStyle) >= object_entry_group_counts[EnumValue(ObjectType::TerrainEdge)]) @@ -1288,16 +1288,16 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } const uint16_t waterHeight = tileElement.GetWaterHeight(); - const bool waterGetsClipped = (session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (waterHeight > gClipHeight * COORDS_Z_STEP); + const bool waterGetsClipped = (session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (waterHeight > gClipHeight * COORDS_Z_STEP); if (waterHeight > 0 && !gTrackDesignSaveMode && !waterGetsClipped) { // loc_6615A9: (water height) - session->InteractionType = ViewportInteractionItem::Water; + session.InteractionType = ViewportInteractionItem::Water; const uint16_t localHeight = height + 16; - session->WaterHeight = waterHeight; + session.WaterHeight = waterHeight; int32_t image_offset = 0; if (waterHeight <= localHeight) @@ -1309,11 +1309,11 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co | EnumValue(FilterPaletteID::PaletteWater) << 19; PaintAddImageAsParent(session, image_id, { 0, 0, waterHeight }, { 32, 32, -1 }); - const bool transparent = gConfigGeneral.transparent_water || (session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE); + const bool transparent = gConfigGeneral.transparent_water || (session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE); const uint32_t overlayStart = transparent ? SPR_WATER_OVERLAY : SPR_RCT1_WATER_OVERLAY; PaintAttachToPreviousPS(session, overlayStart + image_offset, 0, 0); - if (!(session->ViewFlags & VIEWPORT_FLAG_HIDE_VERTICAL)) + if (!(session.ViewFlags & VIEWPORT_FLAG_HIDE_VERTICAL)) { // This wasn't in the original, but the code depended on globals that were only set in a different conditional const uint32_t edgeStyle = tileElement.GetEdgeStyle(); @@ -1333,7 +1333,7 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co if ((tileElement.GetParkFences()) && !gTrackDesignSaveMode) { // Owned land boundary fences - session->InteractionType = ViewportInteractionItem::ParkEntrance; + session.InteractionType = ViewportInteractionItem::ParkEntrance; uint8_t rotatedFences = Numerics::rol4(tileElement.GetParkFences(), rotation); @@ -1391,8 +1391,8 @@ void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, co } } - session->InteractionType = ViewportInteractionItem::Terrain; - session->Unk141E9DB |= PaintSessionFlags::IsPassedSurface; + session.InteractionType = ViewportInteractionItem::Terrain; + session.Unk141E9DB |= PaintSessionFlags::IsPassedSurface; switch (surfaceShape) { diff --git a/src/openrct2/paint/tile_element/Paint.TileElement.cpp b/src/openrct2/paint/tile_element/Paint.TileElement.cpp index 348859c972..c56e5f0d7a 100644 --- a/src/openrct2/paint/tile_element/Paint.TileElement.cpp +++ b/src/openrct2/paint/tile_element/Paint.TileElement.cpp @@ -37,8 +37,8 @@ uint16_t testPaintVerticalTunnelHeight; #endif -static void blank_tiles_paint(paint_session* session, int32_t x, int32_t y); -static void sub_68B3FB(paint_session* session, int32_t x, int32_t y); +static void blank_tiles_paint(paint_session& session, int32_t x, int32_t y); +static void sub_68B3FB(paint_session& session, int32_t x, int32_t y); const int32_t SEGMENTS_ALL = SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4; @@ -47,18 +47,18 @@ const int32_t SEGMENTS_ALL = SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C0 | * * rct2: 0x0068B35F */ -void tile_element_paint_setup(paint_session* session, const CoordsXY& mapCoords, bool isTrackPiecePreview) +void tile_element_paint_setup(paint_session& session, const CoordsXY& mapCoords, bool isTrackPiecePreview) { if (!map_is_edge(mapCoords)) { paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_force_set_general_support_height(session, -1, 0); - session->Unk141E9DB = isTrackPiecePreview ? PaintSessionFlags::IsTrackPiecePreview : 0; - session->WaterHeight = 0xFFFF; + session.Unk141E9DB = isTrackPiecePreview ? PaintSessionFlags::IsTrackPiecePreview : 0; + session.WaterHeight = 0xFFFF; sub_68B3FB(session, mapCoords.x, mapCoords.y); } - else if (!(session->ViewFlags & VIEWPORT_FLAG_TRANSPARENT_BACKGROUND)) + else if (!(session.ViewFlags & VIEWPORT_FLAG_TRANSPARENT_BACKGROUND)) { blank_tiles_paint(session, mapCoords.x, mapCoords.y); } @@ -68,10 +68,10 @@ void tile_element_paint_setup(paint_session* session, const CoordsXY& mapCoords, * * rct2: 0x0068B60E */ -static void blank_tiles_paint(paint_session* session, int32_t x, int32_t y) +static void blank_tiles_paint(paint_session& session, int32_t x, int32_t y) { int32_t dx = 0; - switch (session->CurrentRotation) + switch (session.CurrentRotation) { case 0: dx = x + y; @@ -94,7 +94,7 @@ static void blank_tiles_paint(paint_session* session, int32_t x, int32_t y) dx -= 16; int32_t bx = dx + 32; - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (bx <= dpi->y) return; dx -= 20; @@ -102,9 +102,9 @@ static void blank_tiles_paint(paint_session* session, int32_t x, int32_t y) if (dx >= dpi->y) return; - session->SpritePosition.x = x; - session->SpritePosition.y = y; - session->InteractionType = ViewportInteractionItem::None; + session.SpritePosition.x = x; + session.SpritePosition.y = y; + session.InteractionType = ViewportInteractionItem::None; PaintAddImageAsParent(session, SPR_BLANK_TILE, { 0, 0, 16 }, { 32, 32, -1 }); } @@ -114,11 +114,11 @@ bool gShowSupportSegmentHeights = false; * * rct2: 0x0068B3FB */ -static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) +static void sub_68B3FB(paint_session& session, int32_t x, int32_t y) { - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; - if ((session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW)) + if ((session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW)) { if (x < gClipSelectionA.x || x > gClipSelectionB.x) return; @@ -126,24 +126,24 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) return; } - session->LeftTunnelCount = 0; - session->RightTunnelCount = 0; - session->LeftTunnels[0] = { 0xFF, 0xFF }; - session->RightTunnels[0] = { 0xFF, 0xFF }; - session->VerticalTunnelHeight = 0xFF; - session->MapPosition.x = x; - session->MapPosition.y = y; + session.LeftTunnelCount = 0; + session.RightTunnelCount = 0; + session.LeftTunnels[0] = { 0xFF, 0xFF }; + session.RightTunnels[0] = { 0xFF, 0xFF }; + session.VerticalTunnelHeight = 0xFF; + session.MapPosition.x = x; + session.MapPosition.y = y; - const TileElement* tile_element = map_get_first_element_at(session->MapPosition); + const TileElement* tile_element = map_get_first_element_at(session.MapPosition); if (tile_element == nullptr) return; - uint8_t rotation = session->CurrentRotation; + uint8_t rotation = session.CurrentRotation; bool partOfVirtualFloor = false; #ifndef __TESTPAINT__ if (gConfigGeneral.virtual_floor_style != VirtualFloorStyles::Off) { - partOfVirtualFloor = virtual_floor_tile_is_floor(session->MapPosition); + partOfVirtualFloor = virtual_floor_tile_is_floor(session.MapPosition); } #endif // __TESTPAINT__ @@ -166,17 +166,17 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) int32_t screenMinY = translate_3d_to_2d_with_z(rotation, { x, y, 0 }).y; // Display little yellow arrow when building footpaths? - if ((gMapSelectFlags & MAP_SELECT_FLAG_ENABLE_ARROW) && session->MapPosition.x == gMapSelectArrowPosition.x - && session->MapPosition.y == gMapSelectArrowPosition.y) + if ((gMapSelectFlags & MAP_SELECT_FLAG_ENABLE_ARROW) && session.MapPosition.x == gMapSelectArrowPosition.x + && session.MapPosition.y == gMapSelectArrowPosition.y) { uint8_t arrowRotation = (rotation + (gMapSelectArrowDirection & 3)) & 3; uint32_t imageId = arrowRotation + (gMapSelectArrowDirection & 0xFC) + 0x20900C27; int32_t arrowZ = gMapSelectArrowPosition.z; - session->SpritePosition.x = x; - session->SpritePosition.y = y; - session->InteractionType = ViewportInteractionItem::None; + session.SpritePosition.x = x; + session.SpritePosition.y = y; + session.InteractionType = ViewportInteractionItem::None; PaintAddImageAsParent(session, imageId, { 0, 0, arrowZ }, { 32, 32, -1 }, { 0, 0, arrowZ + 18 }); } @@ -210,9 +210,9 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) if (screenMinY - (max_height + 32) >= dpi->y + dpi->height) return; - session->SpritePosition.x = x; - session->SpritePosition.y = y; - session->DidPassSurface = false; + session.SpritePosition.x = x; + session.SpritePosition.y = y; + session.DidPassSurface = false; int32_t previousBaseZ = 0; do { @@ -222,7 +222,7 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) } // Only paint tile_elements below the clip height. - if ((session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (tile_element->GetBaseZ() > gClipHeight * COORDS_Z_STEP)) + if ((session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (tile_element->GetBaseZ() > gClipHeight * COORDS_Z_STEP)) continue; Direction direction = tile_element->GetDirectionWithOffset(rotation); @@ -233,8 +233,8 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) if (baseZ != previousBaseZ) { previousBaseZ = baseZ; - session->PathElementOnSameHeight = nullptr; - session->TrackElementOnSameHeight = nullptr; + session.PathElementOnSameHeight = nullptr; + session.TrackElementOnSameHeight = nullptr; const TileElement* tile_element_sub_iterator = tile_element; while (!(tile_element_sub_iterator++)->IsLastForTile()) { @@ -249,14 +249,14 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) } auto type = tile_element_sub_iterator->GetType(); if (type == TileElementType::Path) - session->PathElementOnSameHeight = tile_element_sub_iterator; + session.PathElementOnSameHeight = tile_element_sub_iterator; else if (type == TileElementType::Track) - session->TrackElementOnSameHeight = tile_element_sub_iterator; + session.TrackElementOnSameHeight = tile_element_sub_iterator; } } - CoordsXY mapPosition = session->MapPosition; - session->CurrentlyDrawnItem = tile_element; + CoordsXY mapPosition = session.MapPosition; + session.CurrentlyDrawnItem = tile_element; // Setup the painting of for example: the underground, signs, rides, scenery, etc. switch (tile_element->GetType()) { @@ -285,7 +285,7 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) PaintBanner(session, direction, baseZ, *(tile_element->AsBanner())); break; } - session->MapPosition = mapPosition; + session.MapPosition = mapPosition; } while (!(tile_element++)->IsLastForTile()); #ifndef __TESTPAINT__ @@ -315,17 +315,17 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) { for (int32_t sx = 0; sx < 3; sx++) { - uint16_t segmentHeight = session->SupportSegments[segmentPositions[sy][sx]].height; + uint16_t segmentHeight = session.SupportSegments[segmentPositions[sy][sx]].height; int32_t imageColourFlats = 0b101111 << 19 | IMAGE_TYPE_TRANSPARENT; if (segmentHeight == 0xFFFF) { - segmentHeight = session->Support.height; + segmentHeight = session.Support.height; // white: 0b101101 imageColourFlats = 0b111011 << 19 | IMAGE_TYPE_TRANSPARENT; } // Only draw supports below the clipping height. - if ((session->ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (segmentHeight > gClipHeight)) + if ((session.ViewFlags & VIEWPORT_FLAG_CLIP_VIEW) && (segmentHeight > gClipHeight)) continue; int32_t xOffset = sy * 10; @@ -342,37 +342,37 @@ static void sub_68B3FB(paint_session* session, int32_t x, int32_t y) } } -void paint_util_push_tunnel_left(paint_session* session, uint16_t height, uint8_t type) +void paint_util_push_tunnel_left(paint_session& session, uint16_t height, uint8_t type) { - session->LeftTunnels[session->LeftTunnelCount] = { static_cast((height / 16)), type }; - if (session->LeftTunnelCount < TUNNEL_MAX_COUNT - 1) + session.LeftTunnels[session.LeftTunnelCount] = { static_cast((height / 16)), type }; + if (session.LeftTunnelCount < TUNNEL_MAX_COUNT - 1) { - session->LeftTunnels[session->LeftTunnelCount + 1] = { 0xFF, 0xFF }; - session->LeftTunnelCount++; + session.LeftTunnels[session.LeftTunnelCount + 1] = { 0xFF, 0xFF }; + session.LeftTunnelCount++; } } -void paint_util_push_tunnel_right(paint_session* session, uint16_t height, uint8_t type) +void paint_util_push_tunnel_right(paint_session& session, uint16_t height, uint8_t type) { - session->RightTunnels[session->RightTunnelCount] = { static_cast((height / 16)), type }; - if (session->RightTunnelCount < TUNNEL_MAX_COUNT - 1) + session.RightTunnels[session.RightTunnelCount] = { static_cast((height / 16)), type }; + if (session.RightTunnelCount < TUNNEL_MAX_COUNT - 1) { - session->RightTunnels[session->RightTunnelCount + 1] = { 0xFF, 0xFF }; - session->RightTunnelCount++; + session.RightTunnels[session.RightTunnelCount + 1] = { 0xFF, 0xFF }; + session.RightTunnelCount++; } } -void paint_util_set_vertical_tunnel(paint_session* session, uint16_t height) +void paint_util_set_vertical_tunnel(paint_session& session, uint16_t height) { #ifdef __TESTPAINT__ testPaintVerticalTunnelHeight = height; #endif - session->VerticalTunnelHeight = height / 16; + session.VerticalTunnelHeight = height / 16; } -void paint_util_set_general_support_height(paint_session* session, int16_t height, uint8_t slope) +void paint_util_set_general_support_height(paint_session& session, int16_t height, uint8_t slope) { - if (session->Support.height >= height) + if (session.Support.height >= height) { return; } @@ -380,19 +380,19 @@ void paint_util_set_general_support_height(paint_session* session, int16_t heigh paint_util_force_set_general_support_height(session, height, slope); } -void paint_util_force_set_general_support_height(paint_session* session, int16_t height, uint8_t slope) +void paint_util_force_set_general_support_height(paint_session& session, int16_t height, uint8_t slope) { - session->Support.height = height; - session->Support.slope = slope; + session.Support.height = height; + session.Support.slope = slope; } const uint16_t segment_offsets[9] = { SEGMENT_B4, SEGMENT_B8, SEGMENT_BC, SEGMENT_C0, SEGMENT_C4, SEGMENT_C8, SEGMENT_CC, SEGMENT_D0, SEGMENT_D4, }; -void paint_util_set_segment_support_height(paint_session* session, int32_t segments, uint16_t height, uint8_t slope) +void paint_util_set_segment_support_height(paint_session& session, int32_t segments, uint16_t height, uint8_t slope) { - support_height* supportSegments = session->SupportSegments; + support_height* supportSegments = session.SupportSegments; for (int32_t s = 0; s < 9; s++) { if (segments & segment_offsets[s]) @@ -414,8 +414,8 @@ uint16_t paint_util_rotate_segments(uint16_t segments, uint8_t rotation) return (segments & 0xFF00) | temp; } -bool PaintShouldShowHeightMarkers(const paint_session* session, const uint32_t viewportFlag) +bool PaintShouldShowHeightMarkers(const paint_session& session, const uint32_t viewportFlag) { - auto dpi = &session->DPI; - return (session->ViewFlags & viewportFlag) && (dpi->zoom_level <= ZoomLevel{ 0 }); + auto dpi = &session.DPI; + return (session.ViewFlags & viewportFlag) && (dpi->zoom_level <= ZoomLevel{ 0 }); } diff --git a/src/openrct2/paint/tile_element/Paint.TileElement.h b/src/openrct2/paint/tile_element/Paint.TileElement.h index 1c0016d591..55b2806294 100644 --- a/src/openrct2/paint/tile_element/Paint.TileElement.h +++ b/src/openrct2/paint/tile_element/Paint.TileElement.h @@ -91,24 +91,24 @@ extern const CoordsXY BannerBoundBoxes[][2]; extern const uint8_t PathSlopeToLandSlope[4]; -void paint_util_push_tunnel_left(paint_session* session, uint16_t height, uint8_t type); -void paint_util_push_tunnel_right(paint_session* session, uint16_t height, uint8_t type); -void paint_util_set_vertical_tunnel(paint_session* session, uint16_t height); +void paint_util_push_tunnel_left(paint_session& session, uint16_t height, uint8_t type); +void paint_util_push_tunnel_right(paint_session& session, uint16_t height, uint8_t type); +void paint_util_set_vertical_tunnel(paint_session& session, uint16_t height); -void paint_util_set_general_support_height(paint_session* session, int16_t height, uint8_t slope); -void paint_util_force_set_general_support_height(paint_session* session, int16_t height, uint8_t slope); -void paint_util_set_segment_support_height(paint_session* session, int32_t segments, uint16_t height, uint8_t slope); +void paint_util_set_general_support_height(paint_session& session, int16_t height, uint8_t slope); +void paint_util_force_set_general_support_height(paint_session& session, int16_t height, uint8_t slope); +void paint_util_set_segment_support_height(paint_session& session, int32_t segments, uint16_t height, uint8_t slope); uint16_t paint_util_rotate_segments(uint16_t segments, uint8_t rotation); -void tile_element_paint_setup(paint_session* session, const CoordsXY& mapCoords, bool isTrackPiecePreview = false); +void tile_element_paint_setup(paint_session& session, const CoordsXY& mapCoords, bool isTrackPiecePreview = false); -void PaintEntrance(paint_session* session, uint8_t direction, int32_t height, const EntranceElement& entranceElement); -void PaintBanner(paint_session* session, uint8_t direction, int32_t height, const BannerElement& bannerElement); -void PaintSurface(paint_session* session, uint8_t direction, uint16_t height, const SurfaceElement& tileElement); -void PaintPath(paint_session* session, uint16_t height, const PathElement& tileElement); -void PaintSmallScenery(paint_session* session, uint8_t direction, int32_t height, const SmallSceneryElement& sceneryElement); -void PaintWall(paint_session* session, uint8_t direction, int32_t height, const WallElement& tileElement); -void PaintLargeScenery(paint_session* session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement); -void PaintTrack(paint_session* session, uint8_t direction, int32_t height, const TrackElement& tileElement); +void PaintEntrance(paint_session& session, uint8_t direction, int32_t height, const EntranceElement& entranceElement); +void PaintBanner(paint_session& session, uint8_t direction, int32_t height, const BannerElement& bannerElement); +void PaintSurface(paint_session& session, uint8_t direction, uint16_t height, const SurfaceElement& tileElement); +void PaintPath(paint_session& session, uint16_t height, const PathElement& tileElement); +void PaintSmallScenery(paint_session& session, uint8_t direction, int32_t height, const SmallSceneryElement& sceneryElement); +void PaintWall(paint_session& session, uint8_t direction, int32_t height, const WallElement& tileElement); +void PaintLargeScenery(paint_session& session, uint8_t direction, uint16_t height, const LargeSceneryElement& tileElement); +void PaintTrack(paint_session& session, uint8_t direction, int32_t height, const TrackElement& tileElement); -bool PaintShouldShowHeightMarkers(const paint_session* session, const uint32_t viewportFlag); +bool PaintShouldShowHeightMarkers(const paint_session& session, const uint32_t viewportFlag); diff --git a/src/openrct2/paint/tile_element/Paint.Wall.cpp b/src/openrct2/paint/tile_element/Paint.Wall.cpp index 69a064a80e..740abd1374 100644 --- a/src/openrct2/paint/tile_element/Paint.Wall.cpp +++ b/src/openrct2/paint/tile_element/Paint.Wall.cpp @@ -45,7 +45,7 @@ static constexpr const uint8_t* DirectionToDoorImageOffset[] = { DirectionToDoor DirectionToDoorImageOffset2, DirectionToDoorImageOffset3 }; static void PaintWallDoor( - paint_session* session, const WallSceneryEntry& wallEntry, ImageId imageId, CoordsXYZ offset, CoordsXYZ bbLengthR1, + paint_session& session, const WallSceneryEntry& wallEntry, ImageId imageId, CoordsXYZ offset, CoordsXYZ bbLengthR1, CoordsXYZ bbOffsetR1, CoordsXYZ bbLengthR2, CoordsXYZ bbOffsetR2, CoordsXYZ bbLengthL, CoordsXYZ bbOffsetL) { auto newImageId0 = imageId; @@ -63,7 +63,7 @@ static void PaintWallDoor( } static void PaintWallDoor( - paint_session* session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, ImageId imageTemplate, + paint_session& session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, ImageId imageTemplate, Direction direction, int32_t height) { auto bbHeight = wallEntry.height * 8 - 2; @@ -148,7 +148,7 @@ static void PaintWallDoor( } static void PaintWallWall( - paint_session* session, const WallSceneryEntry& wallEntry, ImageId imageTemplate, uint32_t imageOffset, CoordsXYZ offset, + paint_session& session, const WallSceneryEntry& wallEntry, ImageId imageTemplate, uint32_t imageOffset, CoordsXYZ offset, CoordsXYZ bounds, CoordsXYZ boundsOffset, bool isGhost) { auto frameNum = (wallEntry.flags2 & WALL_SCENERY_2_ANIMATED) ? (gCurrentTicks & 7) * 2 : 0; @@ -162,7 +162,7 @@ static void PaintWallWall( } static void PaintWallScrollingText( - paint_session* session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, Direction direction, + paint_session& session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, Direction direction, int32_t height, const CoordsXYZ& boundsOffset, bool isGhost) { if (direction != 0 && direction != 3) @@ -202,7 +202,7 @@ static void PaintWallScrollingText( } static void PaintWallWall( - paint_session* session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, ImageId imageTemplate, + paint_session& session, const WallSceneryEntry& wallEntry, const WallElement& wallElement, ImageId imageTemplate, Direction direction, int32_t height, bool isGhost) { uint8_t bbHeight = wallEntry.height * 8 - 2; @@ -311,7 +311,7 @@ static void PaintWallWall( PaintWallScrollingText(session, wallEntry, wallElement, direction, height, boundsOffset, isGhost); } -void PaintWall(paint_session* session, uint8_t direction, int32_t height, const WallElement& wallElement) +void PaintWall(paint_session& session, uint8_t direction, int32_t height, const WallElement& wallElement) { auto* wallEntry = wallElement.GetEntry(); if (wallEntry == nullptr) @@ -319,7 +319,7 @@ void PaintWall(paint_session* session, uint8_t direction, int32_t height, const return; } - session->InteractionType = ViewportInteractionItem::Wall; + session.InteractionType = ViewportInteractionItem::Wall; ImageId imageTemplate; if (wallEntry->flags & WALL_SCENERY_HAS_PRIMARY_COLOUR) @@ -338,7 +338,7 @@ void PaintWall(paint_session* session, uint8_t direction, int32_t height, const paint_util_set_general_support_height(session, 8 * wallElement.clearance_height, 0x20); auto isGhost = false; - if (gTrackDesignSaveMode || (session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + if (gTrackDesignSaveMode || (session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) { if (!track_design_save_contains_tile_element(reinterpret_cast(&wallElement))) { @@ -349,7 +349,7 @@ void PaintWall(paint_session* session, uint8_t direction, int32_t height, const if (wallElement.IsGhost()) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; imageTemplate = ImageId().WithRemap(FilterPaletteID::Palette44); isGhost = true; } diff --git a/src/openrct2/ride/TrackPaint.cpp b/src/openrct2/ride/TrackPaint.cpp index 6a7828eedf..de0b89511f 100644 --- a/src/openrct2/ride/TrackPaint.cpp +++ b/src/openrct2/ride/TrackPaint.cpp @@ -264,7 +264,7 @@ bool track_paint_util_has_fence( } void track_paint_util_paint_floor( - paint_session* session, uint8_t edges, uint32_t colourFlags, uint16_t height, const uint32_t floorSprites[4], + paint_session& session, uint8_t edges, uint32_t colourFlags, uint16_t height, const uint32_t floorSprites[4], const StationObject* stationStyle) { if (stationStyle != nullptr && stationStyle->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS) @@ -293,7 +293,7 @@ void track_paint_util_paint_floor( } void track_paint_util_paint_fences( - paint_session* session, uint8_t edges, const CoordsXY& position, const TrackElement& trackElement, const Ride& ride, + paint_session& session, uint8_t edges, const CoordsXY& position, const TrackElement& trackElement, const Ride& ride, uint32_t colourFlags, uint16_t height, const uint32_t fenceSprites[4], uint8_t rotation) { uint32_t imageId; @@ -333,34 +333,34 @@ bool track_paint_util_should_paint_supports(const CoordsXY& position) } static void track_paint_util_draw_station_impl( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, const TrackElement& trackElement, int32_t fenceOffsetA, int32_t fenceOffsetB); void track_paint_util_draw_station( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement) + paint_session& session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement) { track_paint_util_draw_station_impl(session, ride, direction, height, height, trackElement, 5, 7); } void track_paint_util_draw_station_2( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement, int32_t fenceOffsetA, int32_t fenceOffsetB) { track_paint_util_draw_station_impl(session, ride, direction, height, height, trackElement, fenceOffsetA, fenceOffsetB); } void track_paint_util_draw_station_3( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, const TrackElement& trackElement) { track_paint_util_draw_station_impl(session, ride, direction, height, coverHeight, trackElement, 5, 7); } static void track_paint_util_draw_station_impl( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, const TrackElement& trackElement, int32_t fenceOffsetA, int32_t fenceOffsetB) { - CoordsXY position = session->MapPosition; + CoordsXY position = session.MapPosition; const auto* stationObj = ride.GetStationObject(); const bool hasGreenLight = trackElement.HasGreenLight(); @@ -373,7 +373,7 @@ static void track_paint_util_draw_station_impl( if (direction == 0 || direction == 2) { // height += 5 (height + 5); - hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session.CurrentRotation); if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 0) { @@ -381,24 +381,24 @@ static void track_paint_util_draw_station_impl( { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_GREEN_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_GREEN_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_RED_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_RED_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 2) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_SW_NE : SPR_STATION_PLATFORM_BEGIN_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_SW_NE : SPR_STATION_PLATFORM_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 0, height + fenceOffsetA }, { 32, 8, 1 }); // height -= 5 (height) @@ -408,46 +408,46 @@ static void track_paint_util_draw_station_impl( if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 0) { imageId = (hasGreenLight ? SPR_STATION_PLATFORM_END_GREEN_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_RED_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 2) { - imageId = SPR_STATION_PLATFORM_BEGIN_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_BEGIN_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_PLATFORM_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 24, height + fenceOffsetA }, { 32, 8, 1 }); // height += 2 (height + 7) - hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session.CurrentRotation); if (hasFence) { if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { - imageId = SPR_STATION_BEGIN_ANGLE_FENCE_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_BEGIN_ANGLE_FENCE_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { - imageId = SPR_STATION_LIGHT_BACK_ANGLE_FENCED_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_ANGLE_FENCED_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_FENCE_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 31, height + fenceOffsetB }, { 32, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { // Addition: draw only small fence if there is an entrance/exit at the beginning - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 23, height + fenceOffsetB }, { 1, 8, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { // Addition: draw only small fence if there is an entrance/exit at the end - imageId = SPR_STATION_LIGHT_BACK_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 23, height + fenceOffsetB }, { 1, 8, 7 }); } // height -= 7 (height) @@ -456,19 +456,19 @@ static void track_paint_util_draw_station_impl( if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + fenceOffsetB }, { 1, 8, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { - imageId = SPR_STATION_LIGHT_BACK_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + fenceOffsetB }, { 1, 8, 7 }); } } else if (direction == 1 || direction == 3) { // height += 5 (height + 5); - hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session.CurrentRotation); if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 3) { @@ -476,24 +476,24 @@ static void track_paint_util_draw_station_impl( { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_GREEN_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_GREEN_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_RED_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_RED_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 1) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_NW_SE : SPR_STATION_PLATFORM_BEGIN_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_NW_SE : SPR_STATION_PLATFORM_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 0, height + fenceOffsetA }, { 8, 32, 1 }); // height -= 5 (height) @@ -503,46 +503,46 @@ static void track_paint_util_draw_station_impl( if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 3) { imageId = (hasGreenLight ? SPR_STATION_PLATFORM_END_GREEN_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_RED_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 1) { - imageId = SPR_STATION_PLATFORM_BEGIN_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_BEGIN_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_PLATFORM_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 24, 0, height + fenceOffsetA }, { 8, 32, 1 }); // height += 2 (height + 7) - hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session.CurrentRotation); if (hasFence) { if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { - imageId = SPR_STATION_BEGIN_ANGLE_FENCE_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_BEGIN_ANGLE_FENCE_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { - imageId = SPR_STATION_LIGHT_BACK_ANGLE_FENCED_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_ANGLE_FENCED_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_FENCE_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 31, 0, height + fenceOffsetB }, { 1, 32, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { // Addition: draw only small fence if there is an entrance/exit at the beginning - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 23, 31, height + fenceOffsetB }, { 8, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { // Addition: draw only small fence if there is an entrance/exit at the end - imageId = SPR_STATION_LIGHT_BACK_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 23, 31, height + fenceOffsetB }, { 8, 1, 7 }); } @@ -552,22 +552,22 @@ static void track_paint_util_draw_station_impl( if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + fenceOffsetB }, { 8, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { - imageId = SPR_STATION_LIGHT_BACK_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + fenceOffsetB }, { 8, 1, 7 }); } } } void track_paint_util_draw_station_inverted( - paint_session* session, const Ride& ride, Direction direction, int32_t height, const TrackElement& trackElement, + paint_session& session, const Ride& ride, Direction direction, int32_t height, const TrackElement& trackElement, uint8_t stationVariant) { - CoordsXY position = session->MapPosition; + CoordsXY position = session.MapPosition; const auto* stationObj = ride.GetStationObject(); const bool hasGreenLight = trackElement.HasGreenLight(); @@ -580,7 +580,7 @@ void track_paint_util_draw_station_inverted( if (direction == 0 || direction == 2) { // height += 5 (height + 5); - hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session.CurrentRotation); if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 0) { @@ -588,24 +588,24 @@ void track_paint_util_draw_station_inverted( { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_GREEN_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_GREEN_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_RED_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_RED_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 2) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_SW_NE : SPR_STATION_PLATFORM_BEGIN_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_SW_NE : SPR_STATION_PLATFORM_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 0, height + 6 }, { 32, 8, 1 }); // height -= 5 (height) @@ -615,46 +615,46 @@ void track_paint_util_draw_station_inverted( if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 0) { imageId = (hasGreenLight ? SPR_STATION_PLATFORM_END_GREEN_LIGHT_SW_NE : SPR_STATION_PLATFORM_END_RED_LIGHT_SW_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 2) { - imageId = SPR_STATION_PLATFORM_BEGIN_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_BEGIN_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_PLATFORM_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 24, height + 6 }, { 32, 8, 1 }); // height += 2 (height + 7) - hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session.CurrentRotation); if (hasFence) { if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { - imageId = SPR_STATION_INVERTED_BEGIN_ANGLE_FENCE_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_BEGIN_ANGLE_FENCE_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { - imageId = SPR_STATION_INVERTED_LIGHT_BACK_ANGLE_FENCED_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_LIGHT_BACK_ANGLE_FENCED_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_INVERTED_FENCE_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_FENCE_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 31, height + 8 }, { 32, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { // Addition: draw only small fence if there is an entrance/exit at the beginning - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 23, height + 8 }, { 1, 8, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { // Addition: draw only small fence if there is an entrance/exit at the end - imageId = SPR_STATION_LIGHT_BACK_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 23, height + 8 }, { 1, 8, 7 }); } // height -= 7 (height) @@ -663,19 +663,19 @@ void track_paint_util_draw_station_inverted( if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 0) { - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 8 }, { 1, 8, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 2) { - imageId = SPR_STATION_LIGHT_BACK_NE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 8 }, { 1, 8, 7 }); } } else if (direction == 1 || direction == 3) { // height += 5 (height + 5); - hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session.CurrentRotation); if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 3) { @@ -683,24 +683,24 @@ void track_paint_util_draw_station_inverted( { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_GREEN_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_GREEN_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_END_RED_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_RED_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 1) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_NW_SE : SPR_STATION_PLATFORM_BEGIN_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_NW_SE : SPR_STATION_PLATFORM_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 0, 0, height + 6 }, { 8, 32, 1 }); // height -= 5 (height) @@ -710,46 +710,46 @@ void track_paint_util_draw_station_inverted( if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 3) { imageId = (hasGreenLight ? SPR_STATION_PLATFORM_END_GREEN_LIGHT_NW_SE : SPR_STATION_PLATFORM_END_RED_LIGHT_NW_SE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 1) { - imageId = SPR_STATION_PLATFORM_BEGIN_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_BEGIN_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_PLATFORM_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PLATFORM_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 24, 0, height + 6 }, { 8, 32, 1 }); // height += 2 (height + 7) - hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session.CurrentRotation); if (hasFence) { if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { - imageId = SPR_STATION_INVERTED_BEGIN_ANGLE_FENCE_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_BEGIN_ANGLE_FENCE_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { - imageId = SPR_STATION_INVERTED_LIGHT_BACK_ANGLE_FENCED_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_LIGHT_BACK_ANGLE_FENCED_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } else { - imageId = SPR_STATION_INVERTED_FENCE_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_INVERTED_FENCE_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, imageId, { 31, 0, height + 8 }, { 1, 32, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { // Addition: draw only small fence if there is an entrance/exit at the beginning - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 23, 31, height + 8 }, { 8, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { // Addition: draw only small fence if there is an entrance/exit at the end - imageId = SPR_STATION_LIGHT_BACK_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 23, 31, height + 8 }, { 8, 1, 7 }); } @@ -759,25 +759,25 @@ void track_paint_util_draw_station_inverted( if (trackElement.GetTrackType() == TrackElemType::BeginStation && direction == 3) { - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 8 }, { 8, 1, 7 }); } else if (trackElement.GetTrackType() == TrackElemType::EndStation && direction == 1) { - imageId = SPR_STATION_LIGHT_BACK_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_LIGHT_BACK_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 8 }, { 8, 1, 7 }); } } } bool track_paint_util_draw_station_covers( - paint_session* session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height) + paint_session& session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height) { return track_paint_util_draw_station_covers_2(session, edge, hasFence, stationObject, height, STATION_VARIANT_BASIC); } bool track_paint_util_draw_station_covers_2( - paint_session* session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height, + paint_session& session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height, uint8_t stationVariant) { if (stationObject == nullptr) @@ -785,7 +785,7 @@ bool track_paint_util_draw_station_covers_2( return false; } - if (!(session->Unk141E9DB & (PaintSessionFlags::IsPassedSurface | PaintSessionFlags::IsTrackPiecePreview))) + if (!(session.Unk141E9DB & (PaintSessionFlags::IsPassedSurface | PaintSessionFlags::IsTrackPiecePreview))) { return false; } @@ -832,12 +832,12 @@ bool track_paint_util_draw_station_covers_2( imageOffset += SPR_STATION_COVER_OFFSET_TALL; } - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto imageId = imageTemplate.WithIndex(baseImageIndex + imageOffset); PaintAddImageAsParent(session, imageId, offset, bounds, boundsOffset); // Glass - if (session->TrackColours[SCHEME_MISC] == IMAGE_TYPE_REMAP && (stationObject->Flags & STATION_OBJECT_FLAGS::IS_TRANSPARENT)) + if (session.TrackColours[SCHEME_MISC] == IMAGE_TYPE_REMAP && (stationObject->Flags & STATION_OBJECT_FLAGS::IS_TRANSPARENT)) { imageId = ImageId(baseImageIndex + imageOffset + 12).WithTransparancy(imageTemplate.GetPrimary()); PaintAddImageAsChild(session, imageId, offset, bounds, boundsOffset); @@ -846,48 +846,48 @@ bool track_paint_util_draw_station_covers_2( } void track_paint_util_draw_narrow_station_platform( - paint_session* session, const Ride& ride, Direction direction, int32_t height, int32_t zOffset, + paint_session& session, const Ride& ride, Direction direction, int32_t height, int32_t zOffset, const TrackElement& trackElement) { - CoordsXY position = session->MapPosition; + CoordsXY position = session.MapPosition; const auto* stationObj = ride.GetStationObject(); if (stationObj != nullptr && stationObj->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS) return; if (direction & 1) { - bool hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session->CurrentRotation); + bool hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session.CurrentRotation); uint32_t imageId = (hasFence ? SPR_STATION_NARROW_EDGE_FENCED_NE : SPR_STATION_NARROW_EDGE_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height + zOffset }, { 8, 32, 1 }); track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height); - imageId = SPR_STATION_NARROW_EDGE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_NARROW_EDGE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 24, 0, height + zOffset }, { 8, 32, 1 }); - hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_STATION_FENCE_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + zOffset + 2 }, { 1, 32, 7 }); } track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, stationObj, height); } else { - bool hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session->CurrentRotation); + bool hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, session.CurrentRotation); uint32_t imageId = (hasFence ? SPR_STATION_NARROW_EDGE_FENCED_NW : SPR_STATION_NARROW_EDGE_NW) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height + zOffset }, { 32, 8, 1 }); track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height); - imageId = SPR_STATION_NARROW_EDGE_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_NARROW_EDGE_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 24, height + zOffset }, { 32, 8, 1 }); - hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_STATION_FENCE_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_FENCE_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + zOffset + 2 }, { 32, 1, 7 }); } track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, stationObj, height); @@ -895,7 +895,7 @@ void track_paint_util_draw_narrow_station_platform( } void track_paint_util_draw_pier( - paint_session* session, const Ride& ride, const StationObject* stationObj, const CoordsXY& position, Direction direction, + paint_session& session, const Ride& ride, const StationObject* stationObj, const CoordsXY& position, Direction direction, int32_t height, const TrackElement& trackElement, uint8_t rotation) { if (stationObj != nullptr && stationObj->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS) @@ -906,19 +906,19 @@ void track_paint_util_draw_pier( if (direction & 1) { - hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, position, trackElement, ride, session.CurrentRotation); imageId = (hasFence ? SPR_STATION_PIER_EDGE_NE_FENCED : SPR_STATION_PIER_EDGE_NE) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 1 }, { 2, 0, height }); track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height); - imageId = SPR_STATION_PIER_EDGE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PIER_EDGE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 24, 0, height }, { 8, 32, 1 }); - hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_STATION_PIER_FENCE_SW | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PIER_FENCE_SW | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 2 }, { 1, 32, 7 }); } track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, stationObj, height); @@ -927,30 +927,30 @@ void track_paint_util_draw_pier( { hasFence = track_paint_util_has_fence(EDGE_NW, position, trackElement, ride, rotation); imageId = (hasFence ? SPR_STATION_PIER_EDGE_NW_FENCED : SPR_STATION_PIER_EDGE_NW) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 1 }, { 0, 2, height }); track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height); - imageId = SPR_STATION_PIER_EDGE_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PIER_EDGE_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 24, height }, { 32, 8, 1 }); hasFence = track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, rotation); if (hasFence) { - imageId = SPR_STATION_PIER_FENCE_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_PIER_FENCE_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 2 }, { 32, 1, 7 }); } track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, stationObj, height); } } -void track_paint_util_draw_station_metal_supports(paint_session* session, Direction direction, uint16_t height, uint32_t colour) +void track_paint_util_draw_station_metal_supports(paint_session& session, Direction direction, uint16_t height, uint32_t colour) { track_paint_util_draw_station_metal_supports_2(session, direction, height, colour, 3); } void track_paint_util_draw_station_metal_supports_2( - paint_session* session, Direction direction, uint16_t height, uint32_t colour, uint8_t type) + paint_session& session, Direction direction, uint16_t height, uint32_t colour, uint8_t type) { if (direction & 1) { @@ -1018,7 +1018,7 @@ static constexpr const int8_t right_helix_up_small_quarter_tiles_sprite_map[] = }; void track_paint_util_right_helix_up_small_quarter_tiles_paint( - paint_session* session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3][2], const CoordsXY offsets[4][3][2], const CoordsXY boundsLengths[4][3][2], const CoordsXYZ boundsOffsets[4][3][2]) { @@ -1118,7 +1118,7 @@ static constexpr const int8_t 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( - paint_session* session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][5][2], const CoordsXY offsets[4][5][2], const CoordsXY boundsLengths[4][5][2], const CoordsXYZ boundsOffsets[4][5][2]) { @@ -1295,7 +1295,7 @@ static constexpr const int8_t eighth_to_diag_sprite_map[] = { 0, 1, 2, -1, 3, }; void track_paint_util_eighth_to_diag_tiles_paint( - paint_session* session, const int8_t thickness[4][4], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[4][4], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][4], const CoordsXY offsets[4][4], const CoordsXY boundsLengths[4][4], const CoordsXYZ boundsOffsets[4][4]) { @@ -1337,7 +1337,7 @@ static constexpr const int8_t diag_sprite_map[4][4] = { }; void track_paint_util_diag_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4], const CoordsXY offsets[4], const CoordsXY boundsLengths[4], const CoordsXYZ boundsOffsets[4]) { int32_t index = diag_sprite_map[direction][trackSequence]; @@ -1458,7 +1458,7 @@ static constexpr const int8_t right_quarter_turn_5_tiles_sprite_map[] = { }; void track_paint_util_right_quarter_turn_5_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][5], const CoordsXY offsets[4][5], const CoordsXY boundsLengths[4][5], const CoordsXYZ boundsOffsets[4][5]) { @@ -1479,7 +1479,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint( } void track_paint_util_right_quarter_turn_5_tiles_paint_2( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[][5]) { int8_t sprite = right_quarter_turn_5_tiles_sprite_map[trackSequence]; @@ -1498,7 +1498,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint_2( } void track_paint_util_right_quarter_turn_5_tiles_paint_3( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[][5]) { int8_t sprite = right_quarter_turn_5_tiles_sprite_map[trackSequence]; @@ -1514,7 +1514,7 @@ void track_paint_util_right_quarter_turn_5_tiles_paint_3( } void track_paint_util_right_quarter_turn_5_tiles_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType) + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType) { if (direction == 0 && trackSequence == 0) { @@ -1535,7 +1535,7 @@ void track_paint_util_right_quarter_turn_5_tiles_tunnel( } void track_paint_util_right_quarter_turn_5_tiles_wooden_supports( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence) + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence) { if (trackSequence != 1 && trackSequence != 4) { @@ -1546,7 +1546,7 @@ void track_paint_util_right_quarter_turn_5_tiles_wooden_supports( { 1, 0xFF, 3, 5, 0xFF, 3, 0 }, }; uint8_t supportType = supportTypes[direction][trackSequence]; - wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } @@ -1634,7 +1634,7 @@ static constexpr const int8_t right_quarter_turn_3_tiles_sprite_map[] = { }; void track_paint_util_right_quarter_turn_3_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], const CoordsXY offsets[4][3], const CoordsXY boundsLengths[4][3], const CoordsXYZ boundsOffsets[4][3]) { @@ -1655,7 +1655,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint( } void track_paint_util_right_quarter_turn_3_tiles_paint_2( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3]) { track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset( @@ -1663,7 +1663,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2( } void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], int32_t heightOffset) { int8_t sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence]; @@ -1751,7 +1751,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset( } void track_paint_util_right_quarter_turn_3_tiles_paint_3( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[4][3]) { int8_t sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence]; @@ -1768,7 +1768,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_3( } void track_paint_util_right_quarter_turn_3_tiles_paint_4( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[4][3]) { int8_t sprite = right_quarter_turn_3_tiles_sprite_map[trackSequence]; @@ -1784,7 +1784,7 @@ void track_paint_util_right_quarter_turn_3_tiles_paint_4( } void track_paint_util_right_quarter_turn_3_tiles_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType) + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType) { if (direction == 0 && trackSequence == 0) { @@ -1808,7 +1808,7 @@ void track_paint_util_right_quarter_turn_3_tiles_tunnel( } void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, uint8_t tunnelType3) { if (direction == 0 && trackSequence == 0) @@ -1830,7 +1830,7 @@ void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel( } void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, uint8_t tunnelType3) { if (direction == 0 && trackSequence == 0) @@ -1859,7 +1859,7 @@ static constexpr const int8_t left_quarter_turn_3_tiles_sprite_map[] = { }; void track_paint_util_left_quarter_turn_3_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3]) { track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset( @@ -1867,7 +1867,7 @@ void track_paint_util_left_quarter_turn_3_tiles_paint( } void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], int32_t heightOffset) { int8_t sprite = left_quarter_turn_3_tiles_sprite_map[trackSequence]; @@ -1955,7 +1955,7 @@ void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset( } void track_paint_util_left_quarter_turn_3_tiles_tunnel( - paint_session* session, int16_t height, uint8_t tunnelType, Direction direction, uint8_t trackSequence) + paint_session& session, int16_t height, uint8_t tunnelType, Direction direction, uint8_t trackSequence) { if (direction == 0 && trackSequence == 0) { @@ -1979,7 +1979,7 @@ void track_paint_util_left_quarter_turn_3_tiles_tunnel( } void track_paint_util_left_quarter_turn_1_tile_paint( - paint_session* session, int8_t thickness, int16_t height, int16_t boundBoxZOffset, Direction direction, + paint_session& session, int8_t thickness, int16_t height, int16_t boundBoxZOffset, Direction direction, uint32_t colourFlags, const uint32_t* sprites) { uint32_t imageId = sprites[direction] | colourFlags; @@ -2006,7 +2006,7 @@ void track_paint_util_left_quarter_turn_1_tile_paint( } void track_paint_util_right_quarter_turn_1_tile_tunnel( - paint_session* session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, + paint_session& session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, uint8_t endTunnel) { track_paint_util_left_quarter_turn_1_tile_tunnel( @@ -2014,7 +2014,7 @@ void track_paint_util_right_quarter_turn_1_tile_tunnel( } void track_paint_util_left_quarter_turn_1_tile_tunnel( - paint_session* session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, + paint_session& session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, uint8_t endTunnel) { switch (direction) @@ -2032,12 +2032,12 @@ void track_paint_util_left_quarter_turn_1_tile_tunnel( } } -void track_paint_util_spinning_tunnel_paint(paint_session* session, int8_t thickness, int16_t height, Direction direction) +void track_paint_util_spinning_tunnel_paint(paint_session& session, int8_t thickness, int16_t height, Direction direction) { int32_t frame = gCurrentTicks >> 2 & 3; - uint32_t colourFlags = session->TrackColours[SCHEME_SUPPORTS]; + uint32_t colourFlags = session.TrackColours[SCHEME_SUPPORTS]; - uint32_t colourFlags2 = session->TrackColours[SCHEME_TRACK]; + uint32_t colourFlags2 = session.TrackColours[SCHEME_TRACK]; if (colourFlags2 & IMAGE_TYPE_REMAP_2_PLUS) { colourFlags |= colourFlags2 & (IMAGE_TYPE_REMAP_2_PLUS | (0x1F << 24)); @@ -2065,7 +2065,7 @@ void track_paint_util_spinning_tunnel_paint(paint_session* session, int8_t thick } void track_paint_util_onride_photo_small_paint( - paint_session* session, Direction direction, int32_t height, const TrackElement& trackElement) + paint_session& session, Direction direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { { SPR_ON_RIDE_PHOTO_SIGN_SMALL_SW_NE, SPR_ON_RIDE_PHOTO_CAMERA_SMALL_S, SPR_ON_RIDE_PHOTO_CAMERA_FLASH_SMALL_S }, @@ -2075,8 +2075,8 @@ void track_paint_util_onride_photo_small_paint( }; bool takingPhoto = trackElement.IsTakingPhoto(); - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_MISC]; - uint32_t flashImageId = imageIds[direction][takingPhoto ? 2 : 1] | session->TrackColours[SCHEME_MISC]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_MISC]; + uint32_t flashImageId = imageIds[direction][takingPhoto ? 2 : 1] | session.TrackColours[SCHEME_MISC]; switch (direction) { case 0: @@ -2103,7 +2103,7 @@ void track_paint_util_onride_photo_small_paint( } void track_paint_util_onride_photo_paint( - paint_session* session, Direction direction, int32_t height, const TrackElement& trackElement) + paint_session& session, Direction direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { { SPR_ON_RIDE_PHOTO_SIGN_SW_NE, SPR_ON_RIDE_PHOTO_CAMERA_S, SPR_ON_RIDE_PHOTO_CAMERA_FLASH_S }, @@ -2113,8 +2113,8 @@ void track_paint_util_onride_photo_paint( }; bool takingPhoto = trackElement.IsTakingPhoto(); - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_MISC]; - uint32_t flashImageId = imageIds[direction][takingPhoto ? 2 : 1] | session->TrackColours[SCHEME_MISC]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_MISC]; + uint32_t flashImageId = imageIds[direction][takingPhoto ? 2 : 1] | session.TrackColours[SCHEME_MISC]; switch (direction) { case 0: @@ -2153,7 +2153,7 @@ static constexpr const uint16_t RightVerticalLoopSegments[] = { SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, }; -void track_paint_util_right_vertical_loop_segments(paint_session* session, Direction direction, uint8_t trackSequence) +void track_paint_util_right_vertical_loop_segments(paint_session& session, Direction direction, uint8_t trackSequence) { if (trackSequence > 9) { @@ -2165,7 +2165,7 @@ void track_paint_util_right_vertical_loop_segments(paint_session* session, Direc session, paint_util_rotate_segments(RightVerticalLoopSegments[trackSequence], direction), 0xFFFF, 0); } -void track_paint_util_left_corkscrew_up_supports(paint_session* session, Direction direction, uint16_t height) +void track_paint_util_left_corkscrew_up_supports(paint_session& session, Direction direction, uint16_t height) { // TODO: Figure out which of these looks best, and use one to keep a consistent world if (direction == 2) @@ -2174,7 +2174,7 @@ void track_paint_util_left_corkscrew_up_supports(paint_session* session, Directi session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction != 2) { paint_util_set_segment_support_height( @@ -2187,7 +2187,7 @@ void track_paint_util_left_corkscrew_up_supports(paint_session* session, Directi * * rct2: 0x006C4794 */ -void PaintTrack(paint_session* session, Direction direction, int32_t height, const TrackElement& trackElement) +void PaintTrack(paint_session& session, Direction direction, int32_t height, const TrackElement& trackElement) { ride_id_t rideIndex = trackElement.GetRideIndex(); auto ride = get_ride(rideIndex); @@ -2198,7 +2198,7 @@ void PaintTrack(paint_session* session, Direction direction, int32_t height, con } if ((!gTrackDesignSaveMode || rideIndex == gTrackDesignSaveRideIndex) - && !(session->ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) + && !(session.ViewFlags & VIEWPORT_FLAG_HIGHLIGHT_PATH_ISSUES)) { auto trackType = trackElement.GetTrackType(); int32_t trackSequence = trackElement.GetSequenceIndex(); @@ -2206,7 +2206,7 @@ void PaintTrack(paint_session* session, Direction direction, int32_t height, con if (PaintShouldShowHeightMarkers(session, VIEWPORT_FLAG_TRACK_HEIGHTS)) { - session->InteractionType = ViewportInteractionItem::None; + session.InteractionType = ViewportInteractionItem::None; const auto& ted = GetTrackElementDescriptor(trackType); if (ted.HeightMarkerPositions & (1 << trackSequence)) { @@ -2229,33 +2229,33 @@ void PaintTrack(paint_session* session, Direction direction, int32_t height, con zOffset = 23; if (ride->type == RIDE_TYPE_INFORMATION_KIOSK) - LightFxAddKioskLights(session->MapPosition, height, zOffset); + LightFxAddKioskLights(session.MapPosition, height, zOffset); else if (RideTypeDescriptors[ride->type].HasFlag(RIDE_TYPE_FLAG_IS_SHOP)) - LightFxAddShopLights(session->MapPosition, trackElement.GetDirection(), height, zOffset); + LightFxAddShopLights(session.MapPosition, trackElement.GetDirection(), height, zOffset); } #endif - session->InteractionType = ViewportInteractionItem::Ride; - session->TrackColours[SCHEME_TRACK] = SPRITE_ID_PALETTE_COLOUR_2( + session.InteractionType = ViewportInteractionItem::Ride; + session.TrackColours[SCHEME_TRACK] = SPRITE_ID_PALETTE_COLOUR_2( ride->track_colour[trackColourScheme].main, ride->track_colour[trackColourScheme].additional); - session->TrackColours[SCHEME_SUPPORTS] = SPRITE_ID_PALETTE_COLOUR_1(ride->track_colour[trackColourScheme].supports); - session->TrackColours[SCHEME_MISC] = IMAGE_TYPE_REMAP; - session->TrackColours[SCHEME_3] = 0x20C00000; + session.TrackColours[SCHEME_SUPPORTS] = SPRITE_ID_PALETTE_COLOUR_1(ride->track_colour[trackColourScheme].supports); + session.TrackColours[SCHEME_MISC] = IMAGE_TYPE_REMAP; + session.TrackColours[SCHEME_3] = 0x20C00000; if (trackElement.IsHighlighted()) { - session->TrackColours[SCHEME_TRACK] = 0x21600000; - session->TrackColours[SCHEME_SUPPORTS] = 0x21600000; - session->TrackColours[SCHEME_MISC] = 0x21600000; - session->TrackColours[SCHEME_3] = 0x21600000; + session.TrackColours[SCHEME_TRACK] = 0x21600000; + session.TrackColours[SCHEME_SUPPORTS] = 0x21600000; + session.TrackColours[SCHEME_MISC] = 0x21600000; + session.TrackColours[SCHEME_3] = 0x21600000; } if (trackElement.IsGhost()) { uint32_t ghost_id = CONSTRUCTION_MARKER; - session->InteractionType = ViewportInteractionItem::None; - session->TrackColours[SCHEME_TRACK] = ghost_id; - session->TrackColours[SCHEME_SUPPORTS] = ghost_id; - session->TrackColours[SCHEME_MISC] = ghost_id; - session->TrackColours[SCHEME_3] = ghost_id; + session.InteractionType = ViewportInteractionItem::None; + session.TrackColours[SCHEME_TRACK] = ghost_id; + session.TrackColours[SCHEME_SUPPORTS] = ghost_id; + session.TrackColours[SCHEME_MISC] = ghost_id; + session.TrackColours[SCHEME_3] = ghost_id; } if (ride->type >= RIDE_TYPE_COUNT) diff --git a/src/openrct2/ride/TrackPaint.h b/src/openrct2/ride/TrackPaint.h index d0ed69fdc7..3f42bc5959 100644 --- a/src/openrct2/ride/TrackPaint.h +++ b/src/openrct2/ride/TrackPaint.h @@ -282,122 +282,122 @@ extern const size_t mini_golf_peep_animation_lengths[]; bool track_paint_util_has_fence( enum edge_t edge, const CoordsXY& position, const TrackElement& trackElement, const Ride& ride, uint8_t rotation); void track_paint_util_paint_floor( - paint_session* session, uint8_t edges, uint32_t colourFlags, uint16_t height, const uint32_t floorSprites[4], + paint_session& session, uint8_t edges, uint32_t colourFlags, uint16_t height, const uint32_t floorSprites[4], const StationObject* stationStyle); void track_paint_util_paint_fences( - paint_session* session, uint8_t edges, const CoordsXY& position, const TrackElement& trackElement, const Ride& ride, + paint_session& session, uint8_t edges, const CoordsXY& position, const TrackElement& trackElement, const Ride& ride, uint32_t colourFlags, uint16_t height, const uint32_t fenceSprites[4], uint8_t rotation); bool track_paint_util_draw_station_covers( - paint_session* session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height); + paint_session& session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height); bool track_paint_util_draw_station_covers_2( - paint_session* session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height, + paint_session& session, enum edge_t edge, bool hasFence, const StationObject* stationObject, uint16_t height, uint8_t stationVariant); void track_paint_util_draw_narrow_station_platform( - paint_session* session, const Ride& ride, Direction direction, int32_t height, int32_t zOffset, + paint_session& session, const Ride& ride, Direction direction, int32_t height, int32_t zOffset, const TrackElement& trackElement); void track_paint_util_draw_station( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement); + paint_session& session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement); void track_paint_util_draw_station_2( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, const TrackElement& trackElement, int32_t fenceOffsetA, int32_t fenceOffsetB); void track_paint_util_draw_station_3( - paint_session* session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, + paint_session& session, const Ride& ride, Direction direction, uint16_t height, uint16_t coverHeight, const TrackElement& trackElement); void track_paint_util_draw_station_inverted( - paint_session* session, const Ride& ride, Direction direction, int32_t height, const TrackElement& trackElement, + paint_session& session, const Ride& ride, Direction direction, int32_t height, const TrackElement& trackElement, uint8_t stationVariant); bool track_paint_util_should_paint_supports(const CoordsXY& position); void track_paint_util_draw_pier( - paint_session* session, const Ride& ride, const StationObject* stationObject, const CoordsXY& position, Direction direction, + paint_session& session, const Ride& ride, const StationObject* stationObject, const CoordsXY& position, Direction direction, int32_t height, const TrackElement& trackElement, uint8_t rotation); void track_paint_util_draw_station_metal_supports( - paint_session* session, Direction direction, uint16_t height, uint32_t colour); + paint_session& session, Direction direction, uint16_t height, uint32_t colour); void track_paint_util_draw_station_metal_supports_2( - paint_session* session, Direction direction, uint16_t height, uint32_t colour, uint8_t type); + paint_session& session, Direction direction, uint16_t height, uint32_t colour, uint8_t type); void track_paint_util_right_quarter_turn_5_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][5], const CoordsXY offsets[4][5], const CoordsXY boundsLengths[4][5], const CoordsXYZ boundsOffsets[4][5]); void track_paint_util_right_quarter_turn_5_tiles_paint_2( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[][5]); void track_paint_util_right_quarter_turn_5_tiles_paint_3( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[][5]); void track_paint_util_right_quarter_turn_5_tiles_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType); + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType); void track_paint_util_right_quarter_turn_5_tiles_wooden_supports( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence); + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence); void track_paint_util_right_quarter_turn_3_tiles_25_deg_up_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, uint8_t tunnelType3); void track_paint_util_right_quarter_turn_3_tiles_25_deg_down_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType0, uint8_t tunnelType3); void track_paint_util_right_quarter_turn_3_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], const CoordsXY offsets[4][3], const CoordsXY boundsLengths[4][3], const CoordsXYZ boundsOffsets[4][3]); void track_paint_util_right_quarter_turn_3_tiles_paint_2( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3]); void track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], int32_t heightOffset); void track_paint_util_right_quarter_turn_3_tiles_paint_3( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[4][3]); void track_paint_util_right_quarter_turn_3_tiles_paint_4( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const sprite_bb sprites[4][3]); void track_paint_util_right_quarter_turn_3_tiles_tunnel( - paint_session* session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType); + paint_session& session, int16_t height, Direction direction, uint8_t trackSequence, uint8_t tunnelType); void track_paint_util_left_quarter_turn_3_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3]); void track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3], int32_t heightOffset); void track_paint_util_left_quarter_turn_3_tiles_tunnel( - paint_session* session, int16_t height, uint8_t tunnelType, Direction direction, uint8_t trackSequence); + paint_session& session, int16_t height, uint8_t tunnelType, Direction direction, uint8_t trackSequence); void track_paint_util_left_quarter_turn_1_tile_paint( - paint_session* session, int8_t thickness, int16_t height, int16_t boundBoxZOffset, Direction direction, + paint_session& session, int8_t thickness, int16_t height, int16_t boundBoxZOffset, Direction direction, uint32_t colourFlags, const uint32_t* sprites); -void track_paint_util_spinning_tunnel_paint(paint_session* session, int8_t thickness, int16_t height, Direction direction); +void track_paint_util_spinning_tunnel_paint(paint_session& session, int8_t thickness, int16_t height, Direction direction); void track_paint_util_onride_photo_small_paint( - paint_session* session, Direction direction, int32_t height, const TrackElement& trackElement); + paint_session& session, Direction direction, int32_t height, const TrackElement& trackElement); void track_paint_util_onride_photo_paint( - paint_session* session, Direction direction, int32_t height, const TrackElement& trackElement); + paint_session& session, Direction direction, int32_t height, const TrackElement& trackElement); void track_paint_util_right_helix_up_small_quarter_tiles_paint( - paint_session* session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][3][2], const CoordsXY offsets[4][3][2], const CoordsXY boundsLengths[4][3][2], const CoordsXYZ boundsOffsets[4][3][2]); void track_paint_util_right_helix_up_large_quarter_tiles_paint( - paint_session* session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[2], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][5][2], const CoordsXY offsets[4][5][2], const CoordsXY boundsLengths[4][5][2], const CoordsXYZ boundsOffsets[4][5][2]); void track_paint_util_eighth_to_diag_tiles_paint( - paint_session* session, const int8_t thickness[4][4], int16_t height, Direction direction, uint8_t trackSequence, + paint_session& session, const int8_t thickness[4][4], int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4][4], const CoordsXY offsets[4][4], const CoordsXY boundsLengths[4][4], const CoordsXYZ boundsOffsets[4][4]); void track_paint_util_diag_tiles_paint( - paint_session* session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, + paint_session& session, int8_t thickness, int16_t height, Direction direction, uint8_t trackSequence, uint32_t colourFlags, const uint32_t sprites[4], const CoordsXY offsets[4], const CoordsXY boundsLengths[4], const CoordsXYZ boundsOffsets[4]); void track_paint_util_left_quarter_turn_1_tile_tunnel( - paint_session* session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, + paint_session& session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, uint8_t endTunnel); void track_paint_util_right_quarter_turn_1_tile_tunnel( - paint_session* session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, + paint_session& session, Direction direction, uint16_t baseHeight, int8_t startOffset, uint8_t startTunnel, int8_t endOffset, uint8_t endTunnel); -void track_paint_util_right_vertical_loop_segments(paint_session* session, Direction direction, uint8_t trackSequence); +void track_paint_util_right_vertical_loop_segments(paint_session& session, Direction direction, uint8_t trackSequence); -void track_paint_util_left_corkscrew_up_supports(paint_session* session, Direction direction, uint16_t height); +void track_paint_util_left_corkscrew_up_supports(paint_session& session, Direction direction, uint16_t height); using TRACK_PAINT_FUNCTION = void (*)( - paint_session* session, const Ride& ride, uint8_t trackSequence, Direction direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, Direction direction, int32_t height, const TrackElement& trackElement); using TRACK_PAINT_FUNCTION_GETTER = TRACK_PAINT_FUNCTION (*)(int32_t trackType); diff --git a/src/openrct2/ride/Vehicle.h b/src/openrct2/ride/Vehicle.h index acbf959cd8..bbbecea307 100644 --- a/src/openrct2/ride/Vehicle.h +++ b/src/openrct2/ride/Vehicle.h @@ -266,7 +266,7 @@ struct Vehicle : EntityBase } void ApplyMass(int16_t appliedMass); void Serialise(DataSerialiser& stream); - void Paint(paint_session* session, int32_t imageDirection) const; + void Paint(paint_session& session, int32_t imageDirection) const; private: bool SoundCanPlay() const; diff --git a/src/openrct2/ride/VehiclePaint.cpp b/src/openrct2/ride/VehiclePaint.cpp index 18cda7585a..1fe74b56d7 100644 --- a/src/openrct2/ride/VehiclePaint.cpp +++ b/src/openrct2/ride/VehiclePaint.cpp @@ -930,7 +930,7 @@ const vehicle_boundbox VehicleBoundboxes[16][224] = { }; static void PaintVehicleRiders( - paint_session* session, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry, uint32_t baseImageId, int32_t z, + paint_session& session, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry, uint32_t baseImageId, int32_t z, const vehicle_boundbox& bb) { baseImageId += vehicleEntry->no_vehicle_images; @@ -962,7 +962,7 @@ static void PaintVehicleRiders( // 6D5214 static void vehicle_sprite_paint( - paint_session* session, const Vehicle* vehicle, int32_t ebx, int32_t ecx, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t ebx, int32_t ecx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->draw_order >= std::size(VehicleBoundboxes)) @@ -991,7 +991,7 @@ static void vehicle_sprite_paint( session, imageId, { 0, 0, z }, { bb.length_x, bb.length_y, bb.length_z }, { bb.offset_x, bb.offset_y, bb.offset_z + z }); - auto* dpi = &session->DPI; + auto* dpi = &session.DPI; if (dpi->zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && vehicleEntry->no_seating_rows > 0) { PaintVehicleRiders(session, vehicle, vehicleEntry, baseImageId, z, bb); @@ -1001,7 +1001,7 @@ static void vehicle_sprite_paint( // 6D520E static void vehicle_sprite_paint_6D520E( - paint_session* session, const Vehicle* vehicle, int32_t ebx, int32_t ecx, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t ebx, int32_t ecx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicle_sprite_paint(session, vehicle, ebx + vehicle->SwingSprite, ecx, z, vehicleEntry); @@ -1009,7 +1009,7 @@ static void vehicle_sprite_paint_6D520E( // 6D51EB static void vehicle_sprite_paint_6D51EB( - paint_session* session, const Vehicle* vehicle, int32_t ebx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) + paint_session& session, const Vehicle* vehicle, int32_t ebx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { int32_t ecx = ebx / 2; if (vehicleEntry->flags & VEHICLE_ENTRY_FLAG_USE_16_ROTATION_FRAMES) @@ -1026,7 +1026,7 @@ static void vehicle_sprite_paint_6D51EB( // 6D51DE static void vehicle_sprite_paint_6D51DE( - paint_session* session, const Vehicle* vehicle, int32_t ebx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) + paint_session& session, const Vehicle* vehicle, int32_t ebx, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->restraints_position < 64) { @@ -1053,7 +1053,7 @@ static void vehicle_sprite_paint_6D51DE( // 6D51DE static void vehicle_sprite_0_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicle_sprite_paint_6D51DE(session, vehicle, imageDirection, z, vehicleEntry); @@ -1061,7 +1061,7 @@ static void vehicle_sprite_0_0( // 6D4EE7 static void vehicle_sprite_0_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_BANKED) @@ -1078,7 +1078,7 @@ static void vehicle_sprite_0_1( // 6D4F34 static void vehicle_sprite_0_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_BANKED) @@ -1095,7 +1095,7 @@ static void vehicle_sprite_0_2( // 6D4F0C static void vehicle_sprite_0_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_BANKED) @@ -1112,7 +1112,7 @@ static void vehicle_sprite_0_3( // 6D4F5C static void vehicle_sprite_0_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_BANKED) @@ -1129,7 +1129,7 @@ static void vehicle_sprite_0_4( // 6D4F84 static void vehicle_sprite_0_5( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1150,7 +1150,7 @@ static void vehicle_sprite_0_5( // 6D4FE4 static void vehicle_sprite_0_6( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1171,7 +1171,7 @@ static void vehicle_sprite_0_6( // 6D5055 static void vehicle_sprite_0_7( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1192,7 +1192,7 @@ static void vehicle_sprite_0_7( // 6D50C6 static void vehicle_sprite_0_8( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1213,7 +1213,7 @@ static void vehicle_sprite_0_8( // 6D5137 static void vehicle_sprite_0_9( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1234,7 +1234,7 @@ static void vehicle_sprite_0_9( // 6D4FB1 static void vehicle_sprite_0_10( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1255,7 +1255,7 @@ static void vehicle_sprite_0_10( // 6D501B static void vehicle_sprite_0_11( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1276,7 +1276,7 @@ static void vehicle_sprite_0_11( // 6D508C static void vehicle_sprite_0_12( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1297,7 +1297,7 @@ static void vehicle_sprite_0_12( // 6D50FD static void vehicle_sprite_0_13( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1318,7 +1318,7 @@ static void vehicle_sprite_0_13( // 6D516E static void vehicle_sprite_0_14( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -1339,7 +1339,7 @@ static void vehicle_sprite_0_14( // 6D4EE4 static void vehicle_sprite_0_16( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -1357,7 +1357,7 @@ static void vehicle_sprite_0_16( // 6D4F31 static void vehicle_sprite_0_17( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -1375,7 +1375,7 @@ static void vehicle_sprite_0_17( // 6D4F09 static void vehicle_sprite_0_18( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -1393,7 +1393,7 @@ static void vehicle_sprite_0_18( // 6D4F59 static void vehicle_sprite_0_19( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -1411,7 +1411,7 @@ static void vehicle_sprite_0_19( // 6D51D7 static void vehicle_sprite_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3DE4: @@ -1482,7 +1482,7 @@ static void vehicle_sprite_0( // 6D4614 static void vehicle_sprite_1_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPES) @@ -1499,7 +1499,7 @@ static void vehicle_sprite_1_0( // 6D4662 static void vehicle_sprite_1_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1516,7 +1516,7 @@ static void vehicle_sprite_1_1( // 6D46DB static void vehicle_sprite_1_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_WHILE_BANKED_TRANSITIONS) @@ -1533,7 +1533,7 @@ static void vehicle_sprite_1_2( // 6D467D static void vehicle_sprite_1_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1550,7 +1550,7 @@ static void vehicle_sprite_1_3( // 6D46FD static void vehicle_sprite_1_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_WHILE_BANKED_TRANSITIONS) @@ -1568,7 +1568,7 @@ static void vehicle_sprite_1_4( // 6D460D static void vehicle_sprite_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3C04: @@ -1639,7 +1639,7 @@ static void vehicle_sprite_1( // 6D4791 static void vehicle_sprite_2_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPES) @@ -1665,7 +1665,7 @@ static void vehicle_sprite_2_0( // 6D4833 static void vehicle_sprite_2_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1682,7 +1682,7 @@ static void vehicle_sprite_2_1( // 6D48D6 static void vehicle_sprite_2_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TURNS) @@ -1709,7 +1709,7 @@ static void vehicle_sprite_2_2( // 6D4858 static void vehicle_sprite_2_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1727,7 +1727,7 @@ static void vehicle_sprite_2_3( // 6D4910 static void vehicle_sprite_2_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TURNS) @@ -1756,7 +1756,7 @@ static void vehicle_sprite_2_4( // 6D476C static void vehicle_sprite_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3CA4: @@ -1827,7 +1827,7 @@ static void vehicle_sprite_2( // 6D49DC static void vehicle_sprite_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (!(vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_STEEP_SLOPES)) @@ -1844,7 +1844,7 @@ static void vehicle_sprite_3( // 6D4A31 static void vehicle_sprite_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (!(vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_STEEP_SLOPES)) @@ -1861,7 +1861,7 @@ static void vehicle_sprite_4( // 6D463D static void vehicle_sprite_5_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPES) @@ -1878,7 +1878,7 @@ static void vehicle_sprite_5_0( // 6D469B static void vehicle_sprite_5_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1895,7 +1895,7 @@ static void vehicle_sprite_5_1( // 6D4722 static void vehicle_sprite_5_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_WHILE_BANKED_TRANSITIONS) @@ -1913,7 +1913,7 @@ static void vehicle_sprite_5_2( // 6D46B9 static void vehicle_sprite_5_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -1930,7 +1930,7 @@ static void vehicle_sprite_5_3( // 6D4747 static void vehicle_sprite_5_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_FLAT_TO_GENTLE_SLOPE_WHILE_BANKED_TRANSITIONS) @@ -1948,7 +1948,7 @@ static void vehicle_sprite_5_4( // 6D4636 static void vehicle_sprite_5( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3C54: @@ -2019,7 +2019,7 @@ static void vehicle_sprite_5( // 6D47E4 static void vehicle_sprite_6_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPES) @@ -2045,7 +2045,7 @@ static void vehicle_sprite_6_0( // 6D4880 static void vehicle_sprite_6_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2063,7 +2063,7 @@ static void vehicle_sprite_6_1( // 6D4953 static void vehicle_sprite_6_2( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TURNS) @@ -2092,7 +2092,7 @@ static void vehicle_sprite_6_2( // 6D48AB static void vehicle_sprite_6_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2110,7 +2110,7 @@ static void vehicle_sprite_6_3( // 6D4996 static void vehicle_sprite_6_4( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_GENTLE_SLOPE_BANKED_TURNS) @@ -2139,7 +2139,7 @@ static void vehicle_sprite_6_4( // 6D47DD static void vehicle_sprite_6( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3CF4: @@ -2210,7 +2210,7 @@ static void vehicle_sprite_6( // 6D4A05 static void vehicle_sprite_7( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_STEEP_SLOPES) @@ -2227,7 +2227,7 @@ static void vehicle_sprite_7( // 6D4A59 static void vehicle_sprite_8( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_STEEP_SLOPES) @@ -2244,7 +2244,7 @@ static void vehicle_sprite_8( // 6D4A81 static void vehicle_sprite_9( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2261,7 +2261,7 @@ static void vehicle_sprite_9( // 6D4AE8 static void vehicle_sprite_10( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2278,7 +2278,7 @@ static void vehicle_sprite_10( // 6D4B57 static void vehicle_sprite_11( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2295,7 +2295,7 @@ static void vehicle_sprite_11( // 6D4BB7 static void vehicle_sprite_12( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2312,7 +2312,7 @@ static void vehicle_sprite_12( // 6D4C17 static void vehicle_sprite_13( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2329,7 +2329,7 @@ static void vehicle_sprite_13( // 6D4C77 static void vehicle_sprite_14( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2346,7 +2346,7 @@ static void vehicle_sprite_14( // 6D4CD7 static void vehicle_sprite_15( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2363,7 +2363,7 @@ static void vehicle_sprite_15( // 6D4D37 static void vehicle_sprite_16( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_VERTICAL_SLOPES) @@ -2380,7 +2380,7 @@ static void vehicle_sprite_16( // 6D4AA3 static void vehicle_sprite_17( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2405,7 +2405,7 @@ static void vehicle_sprite_17( // 6D4B0D static void vehicle_sprite_18( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2430,7 +2430,7 @@ static void vehicle_sprite_18( // 6D4B80 static void vehicle_sprite_19( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2451,7 +2451,7 @@ static void vehicle_sprite_19( // 6D4BE0 static void vehicle_sprite_20( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2472,7 +2472,7 @@ static void vehicle_sprite_20( // 6D4C40 static void vehicle_sprite_21( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2493,7 +2493,7 @@ static void vehicle_sprite_21( // 6D4CA0 static void vehicle_sprite_22( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2514,7 +2514,7 @@ static void vehicle_sprite_22( // 6D4D00 static void vehicle_sprite_23( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2535,7 +2535,7 @@ static void vehicle_sprite_23( // 6D51A5 static void vehicle_sprite_24( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->HasUpdateFlag(VEHICLE_UPDATE_FLAG_USE_INVERTED_SPRITES)) @@ -2557,7 +2557,7 @@ static void vehicle_sprite_24( // 6D4D67 static void vehicle_sprite_50_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2574,7 +2574,7 @@ static void vehicle_sprite_50_0( // 6D4DB5 static void vehicle_sprite_50_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2592,7 +2592,7 @@ static void vehicle_sprite_50_1( // 6D4DD3 static void vehicle_sprite_50_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2610,7 +2610,7 @@ static void vehicle_sprite_50_3( // 6D4D60 static void vehicle_sprite_50( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3D44: @@ -2681,7 +2681,7 @@ static void vehicle_sprite_50( // 6D4E3A static void vehicle_sprite_51( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2698,7 +2698,7 @@ static void vehicle_sprite_51( // 6D4E8F static void vehicle_sprite_52( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2715,7 +2715,7 @@ static void vehicle_sprite_52( // 6D4D90 static void vehicle_sprite_53_0( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2732,7 +2732,7 @@ static void vehicle_sprite_53_0( // 6D4DF4 static void vehicle_sprite_53_1( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2750,7 +2750,7 @@ static void vehicle_sprite_53_1( // 6D4E15 static void vehicle_sprite_53_3( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_GENTLE_SLOPE_BANKED_TRANSITIONS) @@ -2768,7 +2768,7 @@ static void vehicle_sprite_53_3( // 6D4D89 static void vehicle_sprite_53( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { // 0x009A3D94: @@ -2839,7 +2839,7 @@ static void vehicle_sprite_53( // 6D4E63 static void vehicle_sprite_54( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2856,7 +2856,7 @@ static void vehicle_sprite_54( // 6D4EB8 static void vehicle_sprite_55( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_DIAGONAL_SLOPES) @@ -2873,7 +2873,7 @@ static void vehicle_sprite_55( // 6D47DA static void vehicle_sprite_56( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -2882,7 +2882,7 @@ static void vehicle_sprite_56( // 6D4A02 static void vehicle_sprite_57( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -2900,7 +2900,7 @@ static void vehicle_sprite_57( // 6D4A56 static void vehicle_sprite_58( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { vehicleEntry--; @@ -2918,7 +2918,7 @@ static void vehicle_sprite_58( // 6D4773 static void vehicle_sprite_59( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicleEntry->sprite_flags & VEHICLE_SPRITE_FLAG_CURVED_LIFT_HILL) @@ -2935,7 +2935,7 @@ static void vehicle_sprite_59( // 0x009A3B14: using vehicle_sprite_func = void (*)( - paint_session* session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, + paint_session& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const rct_ride_entry_vehicle* vehicleEntry); // clang-format off @@ -3007,7 +3007,7 @@ static constexpr const vehicle_sprite_func vehicle_sprite_funcs[] = { * * rct2: 0x006D5600 */ -static void vehicle_visual_splash1_effect(paint_session* session, int32_t z, const Vehicle* vehicle) +static void vehicle_visual_splash1_effect(paint_session& session, int32_t z, const Vehicle* vehicle) { if (vehicle->GetTrackType() != TrackElemType::Watersplash) { @@ -3025,7 +3025,7 @@ static void vehicle_visual_splash1_effect(paint_session* session, int32_t z, con { return; } - int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session->CurrentRotation) & 3) * 8) + int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8) + ((gCurrentTicks / 2) & 7); PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z); } @@ -3034,7 +3034,7 @@ static void vehicle_visual_splash1_effect(paint_session* session, int32_t z, con * * rct2: 0x006D5696 */ -static void vehicle_visual_splash2_effect(paint_session* session, int32_t z, const Vehicle* vehicle) +static void vehicle_visual_splash2_effect(paint_session& session, int32_t z, const Vehicle* vehicle) { if (vehicle->sprite_direction & 7) { @@ -3048,7 +3048,7 @@ static void vehicle_visual_splash2_effect(paint_session* session, int32_t z, con { return; } - int32_t image_id = 29046 + ((((vehicle->sprite_direction / 8) + session->CurrentRotation) & 3) * 8) + int32_t image_id = 29046 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8) + ((gCurrentTicks / 2) & 7); PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z); } @@ -3057,7 +3057,7 @@ static void vehicle_visual_splash2_effect(paint_session* session, int32_t z, con * * rct2: 0x006D57EE */ -static void vehicle_visual_splash3_effect(paint_session* session, int32_t z, const Vehicle* vehicle) +static void vehicle_visual_splash3_effect(paint_session& session, int32_t z, const Vehicle* vehicle) { if (vehicle->sprite_direction & 7) { @@ -3071,7 +3071,7 @@ static void vehicle_visual_splash3_effect(paint_session* session, int32_t z, con { return; } - int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session->CurrentRotation) & 3) * 8) + int32_t image_id = 29014 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8) + ((gCurrentTicks / 2) & 7); PaintAddImageAsChild(session, image_id, 0, 0, 0, 0, 0, z, 0, 0, z); } @@ -3080,7 +3080,7 @@ static void vehicle_visual_splash3_effect(paint_session* session, int32_t z, con * * rct2: 0x006D5783 */ -static void vehicle_visual_splash4_effect(paint_session* session, int32_t z, const Vehicle* vehicle) +static void vehicle_visual_splash4_effect(paint_session& session, int32_t z, const Vehicle* vehicle) { Vehicle* vehicle2 = GetEntity(vehicle->prev_vehicle_on_ride); if (vehicle2 == nullptr) @@ -3099,7 +3099,7 @@ static void vehicle_visual_splash4_effect(paint_session* session, int32_t z, con { return; } - int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session->CurrentRotation) & 3) * 8) + int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8) + ((gCurrentTicks / 2) & 7); PaintAddImageAsChild(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z); } @@ -3108,7 +3108,7 @@ static void vehicle_visual_splash4_effect(paint_session* session, int32_t z, con * * rct2: 0x006D5701 */ -static void vehicle_visual_splash5_effect(paint_session* session, int32_t z, const Vehicle* vehicle) +static void vehicle_visual_splash5_effect(paint_session& session, int32_t z, const Vehicle* vehicle) { Vehicle* vehicle2 = GetEntity(vehicle->prev_vehicle_on_ride); if (vehicle2 == nullptr) @@ -3131,13 +3131,13 @@ static void vehicle_visual_splash5_effect(paint_session* session, int32_t z, con { return; } - int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session->CurrentRotation) & 3) * 8) + int32_t image_id = 29078 + ((((vehicle->sprite_direction / 8) + session.CurrentRotation) & 3) * 8) + ((gCurrentTicks / 2) & 7); PaintAddImageAsChild(session, image_id, 0, 0, 1, 1, 0, z, 0, 0, z); } void vehicle_visual_splash_effect( - paint_session* session, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) + paint_session& session, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { switch (vehicleEntry->effect_visual) { @@ -3164,7 +3164,7 @@ void vehicle_visual_splash_effect( * rct2: 0x006D45F8 */ void vehicle_visual_default( - paint_session* session, int32_t imageDirection, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t imageDirection, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->Pitch < std::size(vehicle_sprite_funcs)) @@ -3173,7 +3173,7 @@ void vehicle_visual_default( } } -void Vehicle::Paint(paint_session* session, int32_t imageDirection) const +void Vehicle::Paint(paint_session& session, int32_t imageDirection) const { const rct_ride_entry_vehicle* vehicleEntry; diff --git a/src/openrct2/ride/VehiclePaint.h b/src/openrct2/ride/VehiclePaint.h index 24edb42b9d..80c51f4433 100644 --- a/src/openrct2/ride/VehiclePaint.h +++ b/src/openrct2/ride/VehiclePaint.h @@ -28,35 +28,35 @@ struct vehicle_boundbox extern const vehicle_boundbox VehicleBoundboxes[16][224]; void vehicle_visual_default( - paint_session* session, int32_t imageDirection, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t imageDirection, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_roto_drop( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_observation_tower( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_river_rapids( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_reverser( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_splash_boats_or_water_coaster( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_launched_freefall( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_splash_effect( - paint_session* session, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); + paint_session& session, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_virginia_reel( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_submarine( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry); void vehicle_visual_mini_golf_player( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle); + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle); void vehicle_visual_mini_golf_ball( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle); + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle); diff --git a/src/openrct2/ride/coaster/AirPoweredVerticalCoaster.cpp b/src/openrct2/ride/coaster/AirPoweredVerticalCoaster.cpp index 66acd06d9d..56e851f116 100644 --- a/src/openrct2/ride/coaster/AirPoweredVerticalCoaster.cpp +++ b/src/openrct2/ride/coaster/AirPoweredVerticalCoaster.cpp @@ -164,10 +164,10 @@ enum SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_SE_NE_PART_0 = 22333, }; -static uint32_t air_powered_vertical_rc_get_support_colour(paint_session* session) +static uint32_t air_powered_vertical_rc_get_support_colour(paint_session& session) { - uint32_t colourFlags = session->TrackColours[SCHEME_SUPPORTS]; - uint32_t trackColour = session->TrackColours[SCHEME_TRACK]; + uint32_t colourFlags = session.TrackColours[SCHEME_SUPPORTS]; + uint32_t trackColour = session.TrackColours[SCHEME_TRACK]; if (trackColour & IMAGE_TYPE_REMAP_2_PLUS) { colourFlags |= (trackColour & 0x9F000000); @@ -177,7 +177,7 @@ static uint32_t air_powered_vertical_rc_get_support_colour(paint_session* sessio /** rct2: 0x008AFAD4 */ static void air_powered_vertical_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -187,10 +187,10 @@ static void air_powered_vertical_rc_track_flat( SPR_AIR_POWERED_VERTICAL_RC_FLAT_NW_SE, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -199,7 +199,7 @@ static void air_powered_vertical_rc_track_flat( } static void air_powered_vertical_rc_track_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -210,13 +210,12 @@ static void air_powered_vertical_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, height); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, - height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_narrow_station_platform(session, ride, direction, height, 5, trackElement); @@ -227,7 +226,7 @@ static void air_powered_vertical_rc_track_station( } static void air_powered_vertical_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][5] = { @@ -262,7 +261,7 @@ static void air_powered_vertical_rc_track_right_quarter_turn_5( }; track_paint_util_right_quarter_turn_5_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[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(session, height, direction, trackSequence, TUNNEL_SQUARE_FLAT); @@ -310,7 +309,7 @@ static void air_powered_vertical_rc_track_right_quarter_turn_5( } static void air_powered_vertical_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -319,7 +318,7 @@ static void air_powered_vertical_rc_track_left_quarter_turn_5( /** rct2: 0x008AFB74 */ static void air_powered_vertical_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -329,16 +328,16 @@ static void air_powered_vertical_rc_track_flat_to_left_bank( { SPR_AIR_POWERED_VERTICAL_RC_FLAT_TO_LEFT_BANK_SE_NW, SPR_AIR_POWERED_VERTICAL_RC_FLAT_TO_LEFT_BANK_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); if (direction == 0 || direction == 1) { - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 26, height, 0, 27, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -348,7 +347,7 @@ static void air_powered_vertical_rc_track_flat_to_left_bank( /** rct2: 0x008AFB84 */ static void air_powered_vertical_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -358,16 +357,16 @@ static void air_powered_vertical_rc_track_flat_to_right_bank( { SPR_AIR_POWERED_VERTICAL_RC_FLAT_TO_RIGHT_BANK_SE_NW, SPR_AIR_POWERED_VERTICAL_RC_FLAT_TO_LEFT_BANK_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); if (direction == 2 || direction == 3) { - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 26, height, 0, 27, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -376,7 +375,7 @@ static void air_powered_vertical_rc_track_flat_to_right_bank( } static void air_powered_vertical_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { air_powered_vertical_rc_track_flat_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -384,14 +383,14 @@ static void air_powered_vertical_rc_track_left_bank_to_flat( /** rct2: 0x008AFBA4 */ static void air_powered_vertical_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { air_powered_vertical_rc_track_flat_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void air_powered_vertical_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][5] = { @@ -426,18 +425,18 @@ static void air_powered_vertical_rc_track_banked_right_quarter_turn_5( }; track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); if (direction == 1 && trackSequence == 6) { uint32_t imageId = SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_NW_SW_PART_4 - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height }); } else if (direction == 3 && trackSequence == 0) { uint32_t imageId = SPR_AIR_POWERED_VERTICAL_RC_BANKED_QUARTER_TURN_5_FRONT_SE_NE_PART_0 - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height }); } @@ -488,7 +487,7 @@ static void air_powered_vertical_rc_track_banked_right_quarter_turn_5( } static void air_powered_vertical_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -498,7 +497,7 @@ static void air_powered_vertical_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008AFBD4 */ static void air_powered_vertical_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -508,7 +507,7 @@ static void air_powered_vertical_rc_track_left_bank( SPR_AIR_POWERED_VERTICAL_RC_LEFT_BANK_SE_NW, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 1) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 26, height, 0, 27, height); @@ -518,7 +517,7 @@ static void air_powered_vertical_rc_track_left_bank( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -527,14 +526,14 @@ static void air_powered_vertical_rc_track_left_bank( } static void air_powered_vertical_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { air_powered_vertical_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void air_powered_vertical_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -544,10 +543,10 @@ static void air_powered_vertical_rc_track_brakes( SPR_AIR_POWERED_VERTICAL_RC_BRAKES_SW_NE, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -556,7 +555,7 @@ static void air_powered_vertical_rc_track_brakes( } static void air_powered_vertical_rc_track_vertical_slope_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t trackImageIds[7][4] = { @@ -655,7 +654,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up( }; uint32_t supportsImageId = supportImageIds[trackSequence][direction] | air_powered_vertical_rc_get_support_colour(session); - uint32_t trackImageId = trackImageIds[trackSequence][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t trackImageId = trackImageIds[trackSequence][direction] | session.TrackColours[SCHEME_TRACK]; int8_t bbHeight; bool isDirection03 = (direction == 0 || direction == 3); switch (trackSequence) @@ -665,7 +664,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up( PaintAddImageAsParentRotated(session, direction, supportsImageId, 0, 0, 20, 32, bbHeight, height, 0, 6, height); PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 20, 32, bbHeight, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -689,7 +688,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up( PaintAddImageAsChildRotated(session, direction, trackImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (trackSequence == 0) { @@ -713,21 +712,21 @@ static void air_powered_vertical_rc_track_vertical_slope_up( PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + supportHeights[trackSequence], 0x20); break; case 5: - if (wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS])) + if (wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS])) { uint32_t floorImageId; if (direction & 1) { - floorImageId = SPR_FLOOR_PLANKS_90_DEG | session->TrackColours[SCHEME_SUPPORTS]; + floorImageId = SPR_FLOOR_PLANKS_90_DEG | session.TrackColours[SCHEME_SUPPORTS]; } else { - floorImageId = SPR_FLOOR_PLANKS | session->TrackColours[SCHEME_SUPPORTS]; + floorImageId = SPR_FLOOR_PLANKS | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height }); PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 26, 26, 126, height, 3, 3, height); @@ -750,7 +749,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up( PaintAddImageAsParentRotated(session, direction, trackImageId, 0, 0, 1, 20, 126, height, 27, 6, height); PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 1, 20, 126, height, 27, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_vertical_tunnel(session, height + 240); @@ -761,7 +760,7 @@ static void air_powered_vertical_rc_track_vertical_slope_up( } static void air_powered_vertical_rc_track_vertical_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -779,7 +778,7 @@ static void air_powered_vertical_rc_track_vertical_up( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 26, 26, 79, height, 3, 3, height); break; case 1: - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 2, 20, 79, height, 0, 6, height); @@ -798,7 +797,7 @@ static void air_powered_vertical_rc_track_vertical_up( } static void air_powered_vertical_rc_track_vertical_top( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -831,7 +830,7 @@ static void air_powered_vertical_rc_track_vertical_top( { case 0: imageIdS = imageIds[direction][0] | air_powered_vertical_rc_get_support_colour(session); - imageIdT = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageIdT = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0) { PaintAddImageAsParentRotated(session, direction, imageIdS, 0, 0, 32, 20, 15, height, 0, 6, height); @@ -844,7 +843,7 @@ static void air_powered_vertical_rc_track_vertical_top( } break; case 1: - imageIdT = imageIds[direction][2] | session->TrackColours[SCHEME_TRACK]; + imageIdT = imageIds[direction][2] | session.TrackColours[SCHEME_TRACK]; if (direction == 0) { PaintAddImageAsParentRotated(session, direction, imageIdT, 0, 0, 2, 20, 15, height, 0, 6, height); @@ -856,7 +855,7 @@ static void air_powered_vertical_rc_track_vertical_top( paint_util_set_vertical_tunnel(session, height + 80); break; case 2: - imageIdT = imageIds[direction][3] | session->TrackColours[SCHEME_TRACK]; + imageIdT = imageIds[direction][3] | session.TrackColours[SCHEME_TRACK]; if (direction == 0) { PaintAddImageAsParentRotated(session, direction, imageIdT, 0, 0, 2, 20, 1, height, 33, 6, height); @@ -869,7 +868,7 @@ static void air_powered_vertical_rc_track_vertical_top( break; case 3: imageIdS = imageIds[direction][4] | air_powered_vertical_rc_get_support_colour(session); - imageIdT = imageIds[direction][5] | session->TrackColours[SCHEME_TRACK]; + imageIdT = imageIds[direction][5] | session.TrackColours[SCHEME_TRACK]; if (direction == 0) { PaintAddImageAsParentRotated(session, direction, imageIdS, 0, 0, 5, 20, 1, height, 24, 6, height); @@ -888,14 +887,14 @@ static void air_powered_vertical_rc_track_vertical_top( } static void air_powered_vertical_rc_track_vertical_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { air_powered_vertical_rc_track_vertical_up(session, ride, trackSequence ^ 1, (direction + 2) & 3, height, trackElement); } static void air_powered_vertical_rc_track_vertical_slope_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { air_powered_vertical_rc_track_vertical_slope_up( @@ -903,12 +902,12 @@ static void air_powered_vertical_rc_track_vertical_slope_down( } static void air_powered_vertical_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { // The booster piece is borrowed from the Reverse Freefall Colour. // It has two track colours, instead of the one that the APVC has. - uint32_t colour = session->TrackColours[SCHEME_TRACK]; + uint32_t colour = session.TrackColours[SCHEME_TRACK]; if (!trackElement.IsGhost() && !trackElement.IsHighlighted()) { // Replace remap colour 2 (bits 24-28) with a copy of remap colour 1 (bits 19-23). @@ -930,13 +929,13 @@ static void air_powered_vertical_rc_track_booster( paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 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 air_powered_vertical_rc_track_onride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -946,10 +945,10 @@ static void air_powered_vertical_rc_track_onride_photo( SPR_AIR_POWERED_VERTICAL_RC_FLAT_NW_SE, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); diff --git a/src/openrct2/ride/coaster/BobsleighCoaster.cpp b/src/openrct2/ride/coaster/BobsleighCoaster.cpp index a0c5480871..466ef8bce5 100644 --- a/src/openrct2/ride/coaster/BobsleighCoaster.cpp +++ b/src/openrct2/ride/coaster/BobsleighCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _BobsleighBlockBrakeImages[NumOrthogonalDirectio /** rct2: 0x006FE5B4 */ static void bobsleigh_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -42,21 +42,21 @@ static void bobsleigh_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14576, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14576, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14578, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14578, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14577, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14577, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14579, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14579, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -66,21 +66,21 @@ static void bobsleigh_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -90,7 +90,7 @@ static void bobsleigh_rc_track_flat( } static void bobsleigh_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -101,11 +101,11 @@ static void bobsleigh_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -114,7 +114,7 @@ static void bobsleigh_rc_track_station( /** rct2: 0x006FE5C4 */ static void bobsleigh_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -123,32 +123,32 @@ static void bobsleigh_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14634, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14634, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14638, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14638, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14635, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14635, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14639, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14639, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14636, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14636, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14640, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14640, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14637, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14637, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14641, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14641, 0, 0, 32, 1, 50, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -157,32 +157,32 @@ static void bobsleigh_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14610, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14610, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14614, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14614, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14611, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14611, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14615, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14615, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14612, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14612, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14616, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14616, 0, 0, 32, 1, 50, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14613, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14613, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14617, 0, 0, 32, 1, 50, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14617, 0, 0, 32, 1, 50, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -200,7 +200,7 @@ static void bobsleigh_rc_track_25_deg_up( /** rct2: 0x006FE5D4 */ static void bobsleigh_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -209,32 +209,32 @@ static void bobsleigh_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14618, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14618, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14622, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14622, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14619, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14619, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14623, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14623, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14620, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14620, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14624, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14624, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14621, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14621, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14625, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14625, 0, 0, 32, 1, 42, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -243,32 +243,32 @@ static void bobsleigh_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14594, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14594, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14598, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14598, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14595, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14595, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14599, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14599, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14596, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14596, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14600, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14600, 0, 0, 32, 1, 42, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14597, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14597, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14601, 0, 0, 32, 1, 42, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14601, 0, 0, 32, 1, 42, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -286,7 +286,7 @@ static void bobsleigh_rc_track_flat_to_25_deg_up( /** rct2: 0x006FE5E4 */ static void bobsleigh_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -295,32 +295,32 @@ static void bobsleigh_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14626, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14626, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14630, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14630, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14627, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14627, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14631, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14631, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14628, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14628, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14632, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14632, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14629, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14629, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14633, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14633, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -329,32 +329,32 @@ static void bobsleigh_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14602, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14602, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14606, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14606, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14603, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14603, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14607, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14607, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14604, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14604, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14608, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14608, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14605, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14605, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14609, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14609, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -372,7 +372,7 @@ static void bobsleigh_rc_track_25_deg_up_to_flat( /** rct2: 0x006FE5F4 */ static void bobsleigh_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -380,7 +380,7 @@ static void bobsleigh_rc_track_25_deg_down( /** rct2: 0x006FE604 */ static void bobsleigh_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -388,7 +388,7 @@ static void bobsleigh_rc_track_flat_to_25_deg_down( /** rct2: 0x006FE614 */ static void bobsleigh_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -396,7 +396,7 @@ static void bobsleigh_rc_track_25_deg_down_to_flat( /** rct2: 0x006FE624 */ static void bobsleigh_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -406,34 +406,34 @@ static void bobsleigh_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14707, 0, 2, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14707, 0, 2, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14727, 0, 2, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14727, 0, 2, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14712, 0, 2, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14712, 0, 2, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14732, 0, 2, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14732, 0, 2, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14717, 0, 2, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14717, 0, 2, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14737, 0, 2, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14737, 0, 2, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14702, 0, 2, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14702, 0, 2, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14722, 0, 2, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14722, 0, 2, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -450,32 +450,32 @@ static void bobsleigh_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14706, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14706, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14726, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14726, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14711, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14711, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14731, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14731, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14716, 0, 16, 32, 16, 2, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14716, 0, 16, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14736, 0, 16, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14736, 0, 16, 32, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14701, 0, 16, 32, 16, 2, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14701, 0, 16, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14721, 0, 16, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14721, 0, 16, 32, 16, 0, height, 0, 16, height + 27); break; } @@ -491,33 +491,33 @@ static void bobsleigh_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14705, 0, 16, 16, 16, 2, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14705, 0, 16, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14725, 0, 16, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14725, 0, 16, 16, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14710, 16, 16, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14710, 16, 16, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14730, 16, 16, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14730, 16, 16, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14715, 16, 0, 16, 16, 2, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14715, 16, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14735, 16, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14735, 16, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14700, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14700, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14720, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14720, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; } @@ -533,32 +533,32 @@ static void bobsleigh_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14704, 16, 0, 16, 34, 2, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14704, 16, 0, 16, 34, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14724, 16, 0, 16, 34, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14724, 16, 0, 16, 34, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14709, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14709, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14729, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14729, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14714, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14714, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14734, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14734, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14699, 16, 0, 16, 32, 2, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14699, 16, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14719, 16, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14719, 16, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -574,34 +574,34 @@ static void bobsleigh_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14703, 2, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14703, 2, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14723, 2, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14723, 2, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14708, 2, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14708, 2, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14728, 2, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14728, 2, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14713, 2, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14713, 2, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14733, 2, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14733, 2, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14698, 2, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14698, 2, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14718, 2, 0, 30, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14718, 2, 0, 30, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -620,7 +620,7 @@ static void bobsleigh_rc_track_left_quarter_turn_5( /** rct2: 0x006FE634 */ static void bobsleigh_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -629,39 +629,39 @@ static void bobsleigh_rc_track_right_quarter_turn_5( /** rct2: 0x006FE644 */ static void bobsleigh_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14642, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14642, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14646, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14646, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14643, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14643, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14647, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14647, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14644, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14644, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14648, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14648, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14645, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14645, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14649, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14649, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -671,39 +671,39 @@ static void bobsleigh_rc_track_flat_to_left_bank( /** rct2: 0x006FE654 */ static void bobsleigh_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14650, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14650, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14654, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14654, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14651, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14651, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14655, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14655, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14652, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14652, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14656, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14656, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14653, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14653, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14657, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14657, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -713,39 +713,39 @@ static void bobsleigh_rc_track_flat_to_right_bank( /** rct2: 0x006FE664 */ static void bobsleigh_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14652, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14652, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14656, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14656, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14653, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14653, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14657, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14657, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14650, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14650, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14654, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14654, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14651, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14651, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14655, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14655, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -755,39 +755,39 @@ static void bobsleigh_rc_track_left_bank_to_flat( /** rct2: 0x006FE674 */ static void bobsleigh_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14644, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14644, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14648, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14648, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14645, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14645, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14649, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14649, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14642, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14642, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14646, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14646, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14643, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14643, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14647, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14647, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -797,7 +797,7 @@ static void bobsleigh_rc_track_right_bank_to_flat( /** rct2: 0x006FE684 */ static void bobsleigh_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -807,34 +807,34 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14747, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14747, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14767, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14767, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14752, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14752, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14772, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14772, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14757, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14757, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14777, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14777, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14742, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14742, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14762, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14762, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -851,32 +851,30 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14746, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14746, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14766, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14766, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14751, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14751, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14771, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14771, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14756, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14756, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14776, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14776, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14741, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14741, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14761, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14761, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; } @@ -892,33 +890,31 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14745, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14745, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14765, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14765, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14750, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14750, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14770, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14770, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14755, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14755, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14775, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14775, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14740, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14740, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14760, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14760, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; } @@ -934,32 +930,30 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14744, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14744, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14764, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14764, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14749, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14749, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14769, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14769, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14754, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14754, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14774, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14774, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14739, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14739, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14759, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14759, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -975,34 +969,34 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14743, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14743, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14763, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14763, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14748, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14748, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14768, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14768, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14753, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14753, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14773, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14773, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14738, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14738, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14758, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14758, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1021,7 +1015,7 @@ static void bobsleigh_rc_track_banked_left_quarter_turn_5( /** rct2: 0x006FE694 */ static void bobsleigh_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1030,39 +1024,39 @@ static void bobsleigh_rc_track_banked_right_quarter_turn_5( /** rct2: 0x006FE6A4 */ static void bobsleigh_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14674, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14674, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14678, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14678, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14675, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14675, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14679, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14679, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14676, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14676, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14680, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14680, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14677, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14677, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14681, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14681, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1079,39 +1073,39 @@ static void bobsleigh_rc_track_left_bank_to_25_deg_up( /** rct2: 0x006FE6B4 */ static void bobsleigh_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14682, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14682, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14686, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14686, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14683, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14683, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14687, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14687, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14684, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14684, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14688, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14688, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14685, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14685, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14689, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14689, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1128,39 +1122,39 @@ static void bobsleigh_rc_track_right_bank_to_25_deg_up( /** rct2: 0x006FE6C4 */ static void bobsleigh_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14658, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14658, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14662, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14662, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14659, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14659, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14663, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14663, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14660, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14660, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14664, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14664, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14661, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14661, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14665, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14665, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1177,39 +1171,39 @@ static void bobsleigh_rc_track_25_deg_up_to_left_bank( /** rct2: 0x006FE6D4 */ static void bobsleigh_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14666, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14666, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14670, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14670, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14667, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14667, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14671, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14671, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14668, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14668, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14672, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14672, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14669, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14669, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14673, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14673, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1226,7 +1220,7 @@ static void bobsleigh_rc_track_25_deg_up_to_right_bank( /** rct2: 0x006FE6E4 */ static void bobsleigh_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1234,7 +1228,7 @@ static void bobsleigh_rc_track_left_bank_to_25_deg_down( /** rct2: 0x006FE6F4 */ static void bobsleigh_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1242,7 +1236,7 @@ static void bobsleigh_rc_track_right_bank_to_25_deg_down( /** rct2: 0x006FE704 */ static void bobsleigh_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1250,7 +1244,7 @@ static void bobsleigh_rc_track_25_deg_down_to_left_bank( /** rct2: 0x006FE714 */ static void bobsleigh_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1258,39 +1252,39 @@ static void bobsleigh_rc_track_25_deg_down_to_right_bank( /** rct2: 0x006FE724 */ static void bobsleigh_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14690, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14690, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14694, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14694, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14691, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14691, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14695, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14695, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14692, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14692, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14696, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14696, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14693, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14693, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14697, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14697, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1300,7 +1294,7 @@ static void bobsleigh_rc_track_left_bank( /** rct2: 0x006FE734 */ static void bobsleigh_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bobsleigh_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1308,7 +1302,7 @@ static void bobsleigh_rc_track_right_bank( /** rct2: 0x006FE744 */ static void bobsleigh_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1318,34 +1312,34 @@ static void bobsleigh_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14826, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14826, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14842, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14842, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14830, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14830, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14846, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14846, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14829, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14829, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14845, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14845, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14833, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14833, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14849, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14849, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1359,34 +1353,34 @@ static void bobsleigh_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14827, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14827, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14843, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14843, 0, 0, 32, 26, 0, height, 0, 0, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14831, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14831, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14847, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14847, 0, 0, 32, 26, 0, height, 0, 0, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14828, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14828, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14844, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14844, 0, 0, 32, 26, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14832, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14832, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14848, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14848, 0, 0, 32, 26, 0, height, 0, 6, height + 27); break; } @@ -1402,35 +1396,35 @@ static void bobsleigh_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14828, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14828, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14844, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14844, 0, 0, 32, 26, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14832, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14832, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14848, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14848, 0, 0, 32, 26, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14827, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14827, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14843, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14843, 0, 0, 32, 26, 0, height, 0, 0, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14831, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14831, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14847, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14847, 0, 0, 32, 26, 0, height, 0, 0, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1445,34 +1439,34 @@ static void bobsleigh_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14829, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14829, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14845, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14845, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14833, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14833, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14849, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14849, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14826, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14826, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14842, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14842, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14830, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14830, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14846, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14846, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1491,7 +1485,7 @@ static void bobsleigh_rc_track_s_bend_left( /** rct2: 0x006FE754 */ static void bobsleigh_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1501,34 +1495,34 @@ static void bobsleigh_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14834, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14834, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14850, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14850, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14838, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14838, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14854, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14854, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14837, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14837, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14853, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14853, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14841, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14841, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14857, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14857, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1542,34 +1536,34 @@ static void bobsleigh_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14835, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14835, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14851, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14851, 0, 0, 32, 26, 0, height, 0, 6, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14839, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14839, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14855, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14855, 0, 0, 32, 26, 0, height, 0, 6, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14836, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14836, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14852, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14852, 0, 0, 32, 26, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14840, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14840, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14856, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14856, 0, 0, 32, 26, 0, height, 0, 0, height + 27); break; } @@ -1585,35 +1579,35 @@ static void bobsleigh_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14836, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14836, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14852, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14852, 0, 0, 32, 26, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14840, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14840, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14856, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14856, 0, 0, 32, 26, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14835, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14835, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14851, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14851, 0, 0, 32, 26, 0, height, 0, 6, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14839, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14839, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14855, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14855, 0, 0, 32, 26, 0, height, 0, 6, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1628,34 +1622,34 @@ static void bobsleigh_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14837, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14837, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14853, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14853, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14841, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14841, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14857, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14857, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14834, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14834, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14850, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14850, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14838, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14838, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14854, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 14854, 0, 0, 32, 27, 0, height, 0, 2, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1674,7 +1668,7 @@ static void bobsleigh_rc_track_s_bend_right( /** rct2: 0x006FE794 */ static void bobsleigh_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1684,34 +1678,34 @@ static void bobsleigh_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14783, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14783, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14795, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14795, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14786, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14786, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14798, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14798, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14789, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14789, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14801, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14801, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14780, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14780, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14792, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14792, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1728,33 +1722,31 @@ static void bobsleigh_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14782, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14782, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14794, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14794, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14785, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14785, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14797, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14797, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14788, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14788, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14800, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14800, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14779, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14779, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14791, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14791, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -1767,34 +1759,34 @@ static void bobsleigh_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14781, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14781, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14793, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14793, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14784, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14784, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14796, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14796, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14787, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14787, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14799, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14799, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14778, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14778, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14790, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14790, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1813,7 +1805,7 @@ static void bobsleigh_rc_track_left_quarter_turn_3( /** rct2: 0x006FE7A4 */ static void bobsleigh_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1822,7 +1814,7 @@ static void bobsleigh_rc_track_right_quarter_turn_3( /** rct2: 0x006FE7B4 */ static void bobsleigh_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1832,34 +1824,34 @@ static void bobsleigh_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14807, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14807, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14819, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14819, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14810, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14810, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14822, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14822, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14813, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14813, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14825, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14825, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14804, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14804, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14816, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14816, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1876,33 +1868,31 @@ static void bobsleigh_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14806, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14806, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14818, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14818, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14809, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14809, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14821, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14821, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14812, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14812, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14824, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14824, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14803, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14803, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14815, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14815, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -1915,34 +1905,34 @@ static void bobsleigh_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14805, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14805, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14817, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14817, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14808, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14808, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14820, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14820, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14811, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14811, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14823, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14823, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14802, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14802, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14814, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14814, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1961,7 +1951,7 @@ static void bobsleigh_rc_track_left_quarter_turn_3_bank( /** rct2: 0x006FE7C4 */ static void bobsleigh_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1970,7 +1960,7 @@ static void bobsleigh_rc_track_right_quarter_turn_3_bank( /** rct2: 0x006FE7D4 */ static void bobsleigh_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1980,34 +1970,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14887, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14887, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14899, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14899, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14890, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14890, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14902, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14902, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14893, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14893, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14905, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14905, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14884, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14884, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14896, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14896, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2025,33 +2015,31 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14886, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14886, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14898, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14898, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14889, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14889, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14901, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14901, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14892, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14892, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14904, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14904, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14883, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14883, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14895, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14895, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -2064,34 +2052,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14885, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14885, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14897, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14897, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14888, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14888, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14900, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14900, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14891, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14891, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14903, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14903, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14882, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14882, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14894, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14894, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2111,34 +2099,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14884, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14884, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14896, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14896, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14887, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14887, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14899, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14899, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14890, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14890, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14902, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14902, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14893, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14893, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14905, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14905, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -2161,33 +2149,31 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14883, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14883, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14895, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14895, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14886, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14886, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14898, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14898, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14889, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14889, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14901, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14901, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14892, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14892, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14904, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14904, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; } @@ -2200,34 +2186,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14882, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14882, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14894, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14894, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14885, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14885, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14897, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14897, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14888, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14888, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14900, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14900, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14891, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14891, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14903, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14903, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -2242,7 +2228,7 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_small( /** rct2: 0x006FE7E4 */ static void bobsleigh_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2252,34 +2238,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14858, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14858, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14870, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14870, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14861, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14861, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14873, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14873, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14864, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14864, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14876, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14876, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14867, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14867, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14879, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14879, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2297,33 +2283,31 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14859, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14859, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14871, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14871, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14862, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14862, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14874, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14874, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14865, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14865, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14877, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14877, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14868, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14868, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14880, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14880, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; } @@ -2336,34 +2320,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14860, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14860, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14872, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14872, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14863, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14863, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14875, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14875, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14866, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14866, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14878, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14878, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14869, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14869, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14881, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14881, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -2383,34 +2367,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14861, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14861, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14873, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14873, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14864, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14864, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14876, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14876, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14867, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14867, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14879, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14879, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14858, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14858, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14870, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14870, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2433,33 +2417,31 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14862, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14862, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14874, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14874, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14865, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14865, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14877, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14877, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14868, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14868, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14880, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14880, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14859, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14859, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14871, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14871, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -2472,34 +2454,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14863, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14863, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14875, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14875, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14866, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14866, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14878, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14878, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14869, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14869, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14881, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14881, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14860, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14860, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14872, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14872, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -2514,7 +2496,7 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_small( /** rct2: 0x006FE7F4 */ static void bobsleigh_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2529,7 +2511,7 @@ static void bobsleigh_rc_track_left_half_banked_helix_down_small( /** rct2: 0x006FE804 */ static void bobsleigh_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2543,7 +2525,7 @@ static void bobsleigh_rc_track_right_half_banked_helix_down_small( /** rct2: 0x006FE814 */ static void bobsleigh_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2553,34 +2535,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14955, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14955, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14975, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14975, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14960, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14960, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14980, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14980, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14965, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14965, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14985, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14985, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14950, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14950, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14970, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14970, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2598,32 +2580,30 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14954, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14954, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14974, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14974, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14959, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14959, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14979, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14979, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14964, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14964, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14984, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14984, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14949, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14949, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14969, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14969, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; } @@ -2639,33 +2619,31 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14953, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14953, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14973, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14973, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14958, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14958, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14978, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14978, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14963, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14963, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14983, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14983, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14948, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14948, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14968, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14968, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; } @@ -2681,32 +2659,30 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14952, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14952, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14972, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14972, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14957, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14957, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14977, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14977, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14962, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14962, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14982, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14982, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14947, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14947, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14967, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14967, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -2722,34 +2698,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14951, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14951, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14971, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14971, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14956, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14956, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14976, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14976, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14961, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14961, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14981, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14981, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14946, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14946, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14966, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14966, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2769,34 +2745,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14950, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14950, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14970, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14970, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14955, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14955, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14975, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14975, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14960, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14960, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14980, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14980, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14965, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14965, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14985, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14985, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -2819,32 +2795,30 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14949, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14949, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14969, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14969, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14954, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14954, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14974, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14974, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14959, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14959, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14979, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14979, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14964, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14964, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14984, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14984, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -2860,33 +2834,31 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14948, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14948, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14968, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14968, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14953, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14953, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14973, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14973, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14958, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14958, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14978, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14978, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14963, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14963, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14983, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14983, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; } @@ -2902,32 +2874,30 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14947, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14947, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14967, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14967, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14952, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14952, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14972, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14972, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14957, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14957, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14977, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14977, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14962, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14962, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14982, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14982, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; } @@ -2943,34 +2913,34 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14946, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14946, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14966, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14966, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14951, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14951, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14971, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14971, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14956, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14956, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14976, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14976, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14961, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14961, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14981, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14981, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -2985,7 +2955,7 @@ static void bobsleigh_rc_track_left_half_banked_helix_up_large( /** rct2: 0x006FE824 */ static void bobsleigh_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2995,34 +2965,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14906, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14906, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14926, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14926, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14911, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14911, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14931, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14931, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14916, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14916, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14936, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14936, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14921, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14921, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14941, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14941, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3040,32 +3010,30 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14907, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14907, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14927, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14927, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14912, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14912, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14932, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14932, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14917, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14917, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14937, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14937, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14922, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14922, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14942, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14942, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; } @@ -3081,33 +3049,31 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14908, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14908, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14928, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14928, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14913, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14913, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14933, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14933, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14918, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14918, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14938, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14938, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14923, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14923, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14943, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14943, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; } @@ -3123,32 +3089,30 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14909, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14909, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14929, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14929, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14914, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14914, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14934, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14934, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14919, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14919, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14939, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14939, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14924, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14924, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14944, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14944, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -3164,34 +3128,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14910, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14910, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14930, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14930, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14915, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14915, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14935, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14935, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14920, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14920, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14940, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14940, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14925, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14925, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14945, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14945, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3211,34 +3175,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14911, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14911, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14931, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14931, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14916, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14916, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14936, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14936, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14921, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14921, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14941, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14941, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14906, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14906, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14926, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14926, 0, 0, 20, 32, 0, height, 6, 0, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3261,32 +3225,30 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14912, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14912, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14932, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14932, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14917, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14917, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14937, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14937, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14922, 0, 0, 16, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14922, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14942, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14942, 0, 0, 16, 32, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14907, 0, 0, 16, 32, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14907, 0, 0, 16, 32, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14927, 0, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14927, 0, 0, 16, 32, 0, height, 16, 0, height + 27); break; } @@ -3302,33 +3264,31 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14913, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14913, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14933, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14933, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14918, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14918, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14938, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14938, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14923, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14923, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14943, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14943, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14908, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14908, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14928, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14928, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; } @@ -3344,32 +3304,30 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14914, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14914, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14934, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14934, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14919, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14919, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14939, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 14939, 0, 0, 32, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14924, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14924, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14944, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14944, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14909, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14909, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14929, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 14929, 0, 0, 32, 16, 0, height, 0, 16, height + 27); break; } @@ -3385,34 +3343,34 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14915, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14915, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14935, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14935, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14920, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14920, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14940, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14940, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14925, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14925, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14945, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14945, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14910, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14910, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14930, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 14930, 0, 0, 32, 20, 0, height, 0, 6, height + 27); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3427,7 +3385,7 @@ static void bobsleigh_rc_track_right_half_banked_helix_up_large( /** rct2: 0x006FE834 */ static void bobsleigh_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3442,7 +3400,7 @@ static void bobsleigh_rc_track_left_half_banked_helix_down_large( /** rct2: 0x006FE844 */ static void bobsleigh_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3456,7 +3414,7 @@ static void bobsleigh_rc_track_right_half_banked_helix_down_large( /** rct2: 0x006FE854 */ static void bobsleigh_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3464,21 +3422,21 @@ static void bobsleigh_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14582, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14582, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14584, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14584, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14583, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14583, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14585, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14585, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -3488,7 +3446,7 @@ static void bobsleigh_rc_track_brakes( /** rct2: 0x006FE864 */ static void bobsleigh_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); @@ -3497,23 +3455,23 @@ static void bobsleigh_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _BobsleighBlockBrakeImages[direction][isClosed], 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | _BobsleighBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14590, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14590, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _BobsleighBlockBrakeImages[direction][isClosed], 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | _BobsleighBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14591, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 14591, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -3522,47 +3480,47 @@ static void bobsleigh_rc_track_block_brakes( } static void bobsleigh_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 0, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 0, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14572, 0, 0, 32, 20, 0, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14574, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14573, 0, 0, 32, 20, 0, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 14575, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } diff --git a/src/openrct2/ride/coaster/BolligerMabillardTrack.hpp b/src/openrct2/ride/coaster/BolligerMabillardTrack.hpp index a52145cfe3..c69253b71b 100644 --- a/src/openrct2/ride/coaster/BolligerMabillardTrack.hpp +++ b/src/openrct2/ride/coaster/BolligerMabillardTrack.hpp @@ -34,7 +34,7 @@ static constexpr const uint32_t _BolligerMabillardBlockBrakeImages[NumOrthogonal template static void bolliger_mabillard_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -46,12 +46,12 @@ static void bolliger_mabillard_track_flat( 17489, }; PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | imageIds[direction], 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | imageIds[direction], 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -64,12 +64,12 @@ static void bolliger_mabillard_track_flat( }; PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | imageIds[direction], 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | imageIds[direction], 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -80,7 +80,7 @@ static void bolliger_mabillard_track_flat( template static void bolliger_mabillard_track_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -94,19 +94,19 @@ static void bolliger_mabillard_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _BolligerMabillardBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], - 0, 0, 32, 20, 1, height, 0, 6, height + 3); + session, direction, _BolligerMabillardBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, + 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); track_paint_util_draw_station_metal_supports_2( - session, direction, height, session->TrackColours[SCHEME_SUPPORTS], supportType); + session, direction, height, session.TrackColours[SCHEME_SUPPORTS], supportType); track_paint_util_draw_narrow_station_platform(session, ride, direction, height, 9, trackElement); @@ -117,7 +117,7 @@ static void bolliger_mabillard_track_station( template static void bolliger_mabillard_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -126,24 +126,24 @@ static void bolliger_mabillard_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17498, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17498, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17499, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17499, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17500, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17500, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17501, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17501, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -152,24 +152,24 @@ static void bolliger_mabillard_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17204, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17204, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17205, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17205, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17206, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17206, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17207, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17207, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -187,7 +187,7 @@ static void bolliger_mabillard_track_25_deg_up( template static void bolliger_mabillard_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -196,24 +196,24 @@ static void bolliger_mabillard_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17514, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17514, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17515, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17515, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17516, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17516, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17517, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17517, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -222,24 +222,24 @@ static void bolliger_mabillard_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17220, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17220, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17221, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17221, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17222, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17222, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17223, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17223, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -257,7 +257,7 @@ static void bolliger_mabillard_track_60_deg_up( template static void bolliger_mabillard_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -266,24 +266,24 @@ static void bolliger_mabillard_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17490, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17490, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17491, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17491, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17492, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17492, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17493, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17493, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -292,24 +292,24 @@ static void bolliger_mabillard_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17196, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17196, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17197, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17197, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17198, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17198, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17199, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17199, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -327,7 +327,7 @@ static void bolliger_mabillard_track_flat_to_25_deg_up( template static void bolliger_mabillard_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -336,28 +336,28 @@ static void bolliger_mabillard_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17502, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17502, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17503, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17503, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17506, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17506, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17504, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17504, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17507, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17507, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17505, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17505, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -366,28 +366,28 @@ static void bolliger_mabillard_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17208, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17208, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17209, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17209, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17212, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17212, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17210, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17210, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17213, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17213, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17211, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17211, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -405,7 +405,7 @@ static void bolliger_mabillard_track_25_deg_up_to_60_deg_up( template static void bolliger_mabillard_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -414,28 +414,28 @@ static void bolliger_mabillard_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17508, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17508, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17509, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17509, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17512, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17512, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17510, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17510, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17513, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17513, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17511, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17511, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -444,28 +444,28 @@ static void bolliger_mabillard_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17214, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17214, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17215, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17215, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17218, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17218, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17216, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17216, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17219, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17219, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17217, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17217, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -483,7 +483,7 @@ static void bolliger_mabillard_track_60_deg_up_to_25_deg_up( template static void bolliger_mabillard_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -492,24 +492,24 @@ static void bolliger_mabillard_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17494, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17494, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17495, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17495, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17496, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17496, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17497, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17497, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -518,24 +518,24 @@ static void bolliger_mabillard_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17200, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17200, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17201, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17201, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17202, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17202, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17203, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17203, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -553,7 +553,7 @@ static void bolliger_mabillard_track_25_deg_up_to_flat( template static void bolliger_mabillard_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -561,7 +561,7 @@ static void bolliger_mabillard_track_25_deg_down( template static void bolliger_mabillard_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -569,7 +569,7 @@ static void bolliger_mabillard_track_60_deg_down( template static void bolliger_mabillard_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_flat( @@ -578,7 +578,7 @@ static void bolliger_mabillard_track_flat_to_25_deg_down( template static void bolliger_mabillard_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_60_deg_up_to_25_deg_up( @@ -587,7 +587,7 @@ static void bolliger_mabillard_track_25_deg_down_to_60_deg_down( template static void bolliger_mabillard_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_60_deg_up( @@ -596,7 +596,7 @@ static void bolliger_mabillard_track_60_deg_down_to_25_deg_down( template static void bolliger_mabillard_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_flat_to_25_deg_up( @@ -605,7 +605,7 @@ static void bolliger_mabillard_track_25_deg_down_to_flat( template static void bolliger_mabillard_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -615,22 +615,22 @@ static void bolliger_mabillard_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17259, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17259, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17269, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17269, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17254, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17254, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -647,21 +647,19 @@ static void bolliger_mabillard_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17258, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17258, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17263, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17263, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17268, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17268, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17253, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17253, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -676,22 +674,20 @@ static void bolliger_mabillard_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17257, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17257, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17262, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17262, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17267, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17267, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17252, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17252, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -706,21 +702,19 @@ static void bolliger_mabillard_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17256, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17256, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17261, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17261, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17266, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17266, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17251, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17251, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -735,22 +729,22 @@ static void bolliger_mabillard_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17255, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17255, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17260, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17260, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17265, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17265, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17250, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17250, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -769,7 +763,7 @@ static void bolliger_mabillard_track_left_quarter_turn_5( template static void bolliger_mabillard_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -779,35 +773,35 @@ static void bolliger_mabillard_track_right_quarter_turn_5( template static void bolliger_mabillard_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -817,35 +811,35 @@ static void bolliger_mabillard_track_flat_to_left_bank( template static void bolliger_mabillard_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -855,35 +849,35 @@ static void bolliger_mabillard_track_flat_to_right_bank( template static void bolliger_mabillard_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -893,35 +887,35 @@ static void bolliger_mabillard_track_left_bank_to_flat( template static void bolliger_mabillard_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -931,7 +925,7 @@ static void bolliger_mabillard_track_right_bank_to_flat( template static void bolliger_mabillard_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -941,27 +935,25 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17279, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17279, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17290, 0, 0, 32, 1, 26, height, 0, 27, - height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17290, 0, 0, 32, 1, 26, height, 0, 27, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17284, 0, 0, 32, 1, 26, height, 0, 27, - height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17284, 0, 0, 32, 1, 26, height, 0, 27, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17289, 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17289, 0, 0, 32, 20, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17274, 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17274, 0, 0, 32, 20, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -980,22 +972,20 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17278, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17278, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17283, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17283, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17288, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17288, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17273, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17273, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1010,22 +1000,20 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17277, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17277, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17282, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17282, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17287, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17287, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17272, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17272, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1040,22 +1028,20 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17276, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17276, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17281, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17281, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17286, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17286, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17271, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17271, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1070,26 +1056,24 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17275, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17275, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17280, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17280, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17285, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17285, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17291, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17291, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17270, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17270, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1108,7 +1092,7 @@ static void bolliger_mabillard_track_banked_left_quarter_turn_5( template static void bolliger_mabillard_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1118,35 +1102,35 @@ static void bolliger_mabillard_track_banked_right_quarter_turn_5( template static void bolliger_mabillard_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17168, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17168, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17172, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17172, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17169, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17169, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17173, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17173, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17170, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17170, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17171, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17171, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1163,35 +1147,35 @@ static void bolliger_mabillard_track_left_bank_to_25_deg_up( template static void bolliger_mabillard_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17174, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17174, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17175, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17175, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17176, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17176, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17178, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17178, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17177, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17177, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17179, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17179, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1208,35 +1192,35 @@ static void bolliger_mabillard_track_right_bank_to_25_deg_up( template static void bolliger_mabillard_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17180, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17180, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17184, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17184, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17181, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17181, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17185, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17185, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17182, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17182, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17183, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17183, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1253,35 +1237,35 @@ static void bolliger_mabillard_track_25_deg_up_to_left_bank( template static void bolliger_mabillard_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17186, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17186, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17187, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17187, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17188, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17188, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17190, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17190, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17189, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17189, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17191, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17191, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1298,7 +1282,7 @@ static void bolliger_mabillard_track_25_deg_up_to_right_bank( template static void bolliger_mabillard_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_right_bank( @@ -1307,7 +1291,7 @@ static void bolliger_mabillard_track_left_bank_to_25_deg_down( template static void bolliger_mabillard_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_left_bank( @@ -1316,7 +1300,7 @@ static void bolliger_mabillard_track_right_bank_to_25_deg_down( template static void bolliger_mabillard_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_bank_to_25_deg_up( @@ -1325,7 +1309,7 @@ static void bolliger_mabillard_track_25_deg_down_to_left_bank( template static void bolliger_mabillard_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_bank_to_25_deg_up( @@ -1334,31 +1318,31 @@ static void bolliger_mabillard_track_25_deg_down_to_right_bank( template static void bolliger_mabillard_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17192, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17192, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17193, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17193, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17194, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17194, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17195, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17195, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1368,7 +1352,7 @@ static void bolliger_mabillard_track_left_bank( template static void bolliger_mabillard_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1376,7 +1360,7 @@ static void bolliger_mabillard_track_right_bank( template static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1386,22 +1370,22 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17344, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17344, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17349, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17349, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17354, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17354, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17359, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17359, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -1418,21 +1402,19 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17345, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17345, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17350, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17350, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17355, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17355, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17360, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17360, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1447,22 +1429,20 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17346, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17346, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17351, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17351, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17356, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17356, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17361, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17361, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1477,21 +1457,19 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17347, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17347, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17352, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17352, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17357, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17357, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17362, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17362, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1506,22 +1484,22 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17348, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17348, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17353, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17353, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17358, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17358, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17363, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17363, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1540,7 +1518,7 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_up( template static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1550,22 +1528,22 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17324, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17324, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17329, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17329, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17334, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17334, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17339, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17339, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -1582,21 +1560,19 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17325, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17325, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17330, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17330, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17335, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17335, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17340, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17340, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1611,22 +1587,20 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17326, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17326, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17331, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17331, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17336, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17336, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17341, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17341, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1641,21 +1615,19 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17327, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17327, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17332, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17332, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17337, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17337, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17342, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17342, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1670,22 +1642,22 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17328, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17328, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17333, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17333, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17338, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17338, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17343, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17343, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -1704,7 +1676,7 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_up( template static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1714,7 +1686,7 @@ static void bolliger_mabillard_track_left_quarter_turn_5_25_deg_down( template static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1724,7 +1696,7 @@ static void bolliger_mabillard_track_right_quarter_turn_5_25_deg_down( template static void bolliger_mabillard_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1734,22 +1706,22 @@ static void bolliger_mabillard_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1763,21 +1735,21 @@ static void bolliger_mabillard_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -1792,21 +1764,21 @@ static void bolliger_mabillard_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1821,22 +1793,22 @@ static void bolliger_mabillard_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1855,7 +1827,7 @@ static void bolliger_mabillard_track_s_bend_left( template static void bolliger_mabillard_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1865,22 +1837,22 @@ static void bolliger_mabillard_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1894,21 +1866,21 @@ static void bolliger_mabillard_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -1923,21 +1895,21 @@ static void bolliger_mabillard_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1952,22 +1924,22 @@ static void bolliger_mabillard_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1986,7 +1958,7 @@ static void bolliger_mabillard_track_s_bend_right( template static void bolliger_mabillard_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1996,23 +1968,23 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17594, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17594, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17602, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17602, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17601, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17601, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17609, 0, 6, 32, 20, 7, height); - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17609, 0, 6, 32, 20, 7, height); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2031,23 +2003,23 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17595, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17595, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17603, 0, 14, 32, 2, 63, height); - metal_a_supports_paint_setup(session, supportType, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17603, 0, 14, 32, 2, 63, height); + metal_a_supports_paint_setup(session, supportType, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17600, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17600, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17608, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17608, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2062,22 +2034,22 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17596, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17596, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17604, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17604, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17599, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17599, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17607, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17607, 16, 16, 2, 16, 119, height, 16, 16, height); break; } @@ -2090,19 +2062,19 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17597, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17597, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17605, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17605, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17598, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17598, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17606, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17606, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2123,19 +2095,19 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17598, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17598, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17606, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17606, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17597, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17597, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17605, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17605, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2150,22 +2122,22 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17599, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17599, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17607, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17607, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17596, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17596, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17604, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17604, 12, 0, 3, 16, 119, height, 12, 0, height); break; } @@ -2178,23 +2150,23 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17600, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17600, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17608, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17608, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17595, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17595, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17603, 0, 14, 32, 2, 63, height); - metal_a_supports_paint_setup(session, supportType, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17603, 0, 14, 32, 2, 63, height); + metal_a_supports_paint_setup(session, supportType, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2209,23 +2181,23 @@ static void bolliger_mabillard_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17601, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17601, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17609, 0, 6, 32, 20, 7, height); - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17609, 0, 6, 32, 20, 7, height); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17594, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17594, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17602, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17602, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2249,7 +2221,7 @@ static void bolliger_mabillard_track_left_vertical_loop( template static void bolliger_mabillard_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2259,22 +2231,22 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17625, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17625, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17617, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17617, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17618, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17618, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17610, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17610, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2286,23 +2258,23 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17624, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17624, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17616, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17616, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17619, 0, 14, 32, 2, 63, height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17619, 0, 14, 32, 2, 63, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17611, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17611, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2312,22 +2284,22 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17623, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17623, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17615, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17615, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17620, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17620, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17612, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17612, 16, 0, 2, 16, 119, height, 16, 0, height); break; } @@ -2338,19 +2310,19 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17622, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17622, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17614, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17614, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17621, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17621, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17613, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17613, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2366,19 +2338,19 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17621, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17621, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17613, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17613, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17622, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17622, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17614, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17614, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2388,22 +2360,22 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17620, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17620, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17612, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17612, 16, 0, 2, 16, 119, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17623, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17623, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17615, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17615, 10, 16, 4, 16, 119, height, 10, 16, height); break; } @@ -2414,23 +2386,23 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17619, 0, 14, 32, 2, 63, height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17619, 0, 14, 32, 2, 63, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17611, 0, 0, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17611, 0, 0, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17624, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17624, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17616, 0, 6, 32, 26, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17616, 0, 6, 32, 26, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2440,22 +2412,22 @@ static void bolliger_mabillard_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17618, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17618, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17610, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17610, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17625, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17625, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17617, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17617, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2474,7 +2446,7 @@ static void bolliger_mabillard_track_right_vertical_loop( template static void bolliger_mabillard_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2484,22 +2456,22 @@ static void bolliger_mabillard_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17229, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17229, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17232, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17232, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17235, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17235, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17226, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17226, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2516,21 +2488,19 @@ static void bolliger_mabillard_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17228, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17228, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17231, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17231, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17234, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17234, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17225, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17225, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2543,22 +2513,22 @@ static void bolliger_mabillard_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17227, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17227, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17230, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17230, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17233, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17233, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17224, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17224, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2577,7 +2547,7 @@ static void bolliger_mabillard_track_left_quarter_turn_3( template static void bolliger_mabillard_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2587,7 +2557,7 @@ static void bolliger_mabillard_track_right_quarter_turn_3( template static void bolliger_mabillard_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2597,26 +2567,24 @@ static void bolliger_mabillard_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17241, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17248, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17244, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17244, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17247, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17247, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17238, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2633,22 +2601,20 @@ static void bolliger_mabillard_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17240, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17240, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17243, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17243, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17246, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17246, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17237, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17237, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2661,26 +2627,24 @@ static void bolliger_mabillard_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17239, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17239, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17242, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17242, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17245, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17245, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17249, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17249, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17236, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17236, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2699,7 +2663,7 @@ static void bolliger_mabillard_track_left_quarter_turn_3_bank( template static void bolliger_mabillard_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2709,7 +2673,7 @@ static void bolliger_mabillard_track_right_quarter_turn_3_bank( template static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2719,22 +2683,22 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17375, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17377, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17377, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17379, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17373, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17373, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2754,22 +2718,22 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17374, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17374, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17376, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17376, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17378, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17378, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17372, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17372, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2788,7 +2752,7 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_up( template static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2798,22 +2762,22 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17364, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17364, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17366, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17366, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17368, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17370, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17370, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2833,23 +2797,23 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17365, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17365, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17367, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17367, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17369, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17369, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17371, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17371, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2870,7 +2834,7 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_up( template static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2880,7 +2844,7 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down( template static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2890,7 +2854,7 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down( template static void bolliger_mabillard_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2900,26 +2864,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17399, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17399, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17406, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17406, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17402, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17402, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17405, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17396, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17396, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2937,22 +2899,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2965,26 +2925,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17397, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17397, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17400, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17400, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17403, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17403, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17407, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17407, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17394, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17394, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3004,26 +2962,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17396, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17396, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17399, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17399, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17406, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17406, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17402, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17402, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17405, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17405, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3046,23 +3002,21 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3074,26 +3028,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17394, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17394, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17397, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17397, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17400, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17400, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17403, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17403, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17407, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17407, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -3108,7 +3060,7 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_small( template static void bolliger_mabillard_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3118,26 +3070,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17380, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17380, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17383, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17383, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17386, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17386, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17389, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17389, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17393, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17393, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3155,23 +3105,21 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3183,26 +3131,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17382, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17382, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17385, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17385, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17392, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17392, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17388, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17388, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17391, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17391, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3222,26 +3168,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17383, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17383, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17386, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17386, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17389, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17389, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17393, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17393, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17380, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17380, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3264,22 +3208,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3292,26 +3234,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17385, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17385, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17392, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17392, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17388, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17388, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17391, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17391, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17382, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17382, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -3326,7 +3266,7 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_small( template static void bolliger_mabillard_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3341,7 +3281,7 @@ static void bolliger_mabillard_track_left_half_banked_helix_down_small( template static void bolliger_mabillard_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3356,7 +3296,7 @@ static void bolliger_mabillard_track_right_half_banked_helix_down_small( template static void bolliger_mabillard_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3366,26 +3306,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17439, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17439, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17450, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17450, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17444, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17444, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17449, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17449, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17434, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17434, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3403,22 +3341,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17438, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17438, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17443, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17443, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17448, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17448, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17433, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17433, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3433,22 +3369,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3463,22 +3397,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17436, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17436, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17441, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17441, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17446, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17446, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17431, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17431, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3493,26 +3425,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17435, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17435, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17440, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17440, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17445, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17445, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17451, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17451, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17430, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17430, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3532,26 +3462,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17434, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17434, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17439, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17439, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17450, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17450, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17444, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17444, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17449, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17449, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3574,22 +3502,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17433, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17433, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17438, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17438, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17443, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17443, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17448, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17448, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3604,22 +3530,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3634,22 +3558,20 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17431, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17431, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17436, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17436, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17441, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17441, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17446, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17446, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3664,26 +3586,24 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17430, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17430, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17435, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17435, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17440, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17440, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17445, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17445, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17451, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17451, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -3698,7 +3618,7 @@ static void bolliger_mabillard_track_left_half_banked_helix_up_large( template static void bolliger_mabillard_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3708,26 +3628,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17408, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17408, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17413, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17418, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17418, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17423, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17423, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17429, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17429, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3745,22 +3663,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17409, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17409, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17414, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17414, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17419, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17419, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17424, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17424, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3775,22 +3691,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3805,22 +3719,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17411, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17411, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17416, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17416, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17421, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17421, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17426, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17426, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3835,27 +3747,25 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17412, 0, 0, 20, 32, 3, height, 6, 0, height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17412, 0, 0, 20, 32, 3, height, 6, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17417, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17417, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17428, 0, 0, 1, 32, 26, height, 27, 0, - height); - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17428, 0, 0, 1, 32, 26, height, 27, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17422, 0, 0, 1, 32, 26, height, 27, 0, - height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17422, 0, 0, 1, 32, 26, height, 27, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17427, 0, 0, 20, 32, 3, height, 6, 0, height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17427, 0, 0, 20, 32, 3, height, 6, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3877,26 +3787,24 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17413, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17413, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17418, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17418, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17423, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17423, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17429, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17429, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17408, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17408, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3919,22 +3827,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17414, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17414, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17419, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17419, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17424, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17424, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17409, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17409, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3949,22 +3855,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3979,22 +3883,20 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17416, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17416, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17421, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17421, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17426, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17426, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17411, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17411, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4009,27 +3911,25 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17417, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17417, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17428, 0, 0, 32, 1, 26, height, 0, 27, - height); - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17428, 0, 0, 32, 1, 26, height, 0, 27, height); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17422, 0, 0, 32, 1, 26, height, 0, 27, - height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17422, 0, 0, 32, 1, 26, height, 0, 27, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17427, 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17427, 0, 0, 32, 20, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17412, 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17412, 0, 0, 32, 20, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4046,7 +3946,7 @@ static void bolliger_mabillard_track_right_half_banked_helix_up_large( template static void bolliger_mabillard_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4061,7 +3961,7 @@ static void bolliger_mabillard_track_left_half_banked_helix_down_large( template static void bolliger_mabillard_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4076,34 +3976,34 @@ static void bolliger_mabillard_track_right_half_banked_helix_down_large( template static void bolliger_mabillard_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17301, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17301, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17305, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17305, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17302, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17302, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17306, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17306, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17303, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17303, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17307, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17307, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17300, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17300, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17304, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17304, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -4113,34 +4013,34 @@ static void bolliger_mabillard_track_left_quarter_turn_1_60_deg_up( template static void bolliger_mabillard_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17292, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17292, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17296, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17296, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17293, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17293, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17297, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17297, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17294, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17294, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17298, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17298, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17295, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17295, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17299, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17299, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -4150,7 +4050,7 @@ static void bolliger_mabillard_track_right_quarter_turn_1_60_deg_up( template static void bolliger_mabillard_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_quarter_turn_1_60_deg_up( @@ -4159,7 +4059,7 @@ static void bolliger_mabillard_track_left_quarter_turn_1_60_deg_down( template static void bolliger_mabillard_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_quarter_turn_1_60_deg_up( @@ -4168,7 +4068,7 @@ static void bolliger_mabillard_track_right_quarter_turn_1_60_deg_down( template static void bolliger_mabillard_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4176,17 +4076,17 @@ static void bolliger_mabillard_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17148, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17148, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17149, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17149, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -4196,31 +4096,31 @@ static void bolliger_mabillard_track_brakes( template static void bolliger_mabillard_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17914, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17914, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17915, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17915, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17916, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17916, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17917, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17917, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4237,31 +4137,31 @@ static void bolliger_mabillard_track_25_deg_up_left_banked( template static void bolliger_mabillard_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17918, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17918, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17919, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17919, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17920, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17920, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17921, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17921, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4278,38 +4178,38 @@ static void bolliger_mabillard_track_25_deg_up_right_banked( template static void bolliger_mabillard_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, supportType, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, supportType, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, supportType, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, supportType, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, supportType, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, supportType, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, supportType, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, supportType, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4320,7 +4220,7 @@ static void bolliger_mabillard_track_on_ride_photo( template static void bolliger_mabillard_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_right_banked( @@ -4329,7 +4229,7 @@ static void bolliger_mabillard_track_25_deg_down_left_banked( template static void bolliger_mabillard_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_left_banked( @@ -4338,7 +4238,7 @@ static void bolliger_mabillard_track_25_deg_down_right_banked( template static void bolliger_mabillard_track_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4348,22 +4248,22 @@ static void bolliger_mabillard_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17526, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17526, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17527, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17527, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17528, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17528, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17529, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17529, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -4379,7 +4279,7 @@ static void bolliger_mabillard_track_90_deg_up( template static void bolliger_mabillard_track_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -4387,7 +4287,7 @@ static void bolliger_mabillard_track_90_deg_down( template static void bolliger_mabillard_track_60_deg_up_to_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4397,21 +4297,19 @@ static void bolliger_mabillard_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17518, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17518, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17519, 0, 0, 2, 20, 55, height, 24, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17519, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17520, 0, 0, 2, 20, 55, height, 24, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17520, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17521, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17521, 0, 0, 32, 20, 3, height, 0, 6, height); break; } if (direction == 0 || direction == 3) @@ -4430,7 +4328,7 @@ static void bolliger_mabillard_track_60_deg_up_to_90_deg_up( template static void bolliger_mabillard_track_90_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_60_deg_up_to_90_deg_up( @@ -4439,26 +4337,26 @@ static void bolliger_mabillard_track_90_deg_down_to_60_deg_down( template static void bolliger_mabillard_track_90_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17522, 0, 0, 32, 20, 3, height, 0, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 17522, 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17523, 0, 0, 2, 20, 31, height, 24, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 17523, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17524, 0, 0, 2, 20, 31, height, 24, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 17524, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17525, 0, 0, 32, 20, 3, height, 0, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 17525, 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; } switch (direction) @@ -4477,7 +4375,7 @@ static void bolliger_mabillard_track_90_deg_up_to_60_deg_up( template static void bolliger_mabillard_track_60_deg_down_to_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4487,22 +4385,22 @@ static void bolliger_mabillard_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17524, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17524, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17525, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17525, 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17522, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17522, 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17523, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17523, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; } @@ -4521,7 +4419,7 @@ static void bolliger_mabillard_track_60_deg_down_to_90_deg_down( template static void bolliger_mabillard_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4531,22 +4429,22 @@ static void bolliger_mabillard_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17546, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17546, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17550, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17550, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17554, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17554, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17558, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17558, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4560,21 +4458,19 @@ static void bolliger_mabillard_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17547, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17547, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17551, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17551, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17555, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17555, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17559, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17559, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4589,22 +4485,20 @@ static void bolliger_mabillard_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17548, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17548, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17552, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17552, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17556, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17556, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17560, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17560, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4622,26 +4516,24 @@ static void bolliger_mabillard_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17549, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17549, 0, 0, 16, 16, 3, height, 16, 16, height); - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17553, 0, 0, 16, 18, 3, height, 0, 16, - height); - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17553, 0, 0, 16, 18, 3, height, 0, 16, height); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17557, 0, 0, 16, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17557, 0, 0, 16, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17561, 0, 0, 16, 16, 3, height, 16, 0, - height); - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17561, 0, 0, 16, 16, 3, height, 16, 0, height); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4656,7 +4548,7 @@ static void bolliger_mabillard_track_left_eighth_to_diag( template static void bolliger_mabillard_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4666,22 +4558,22 @@ static void bolliger_mabillard_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17530, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17530, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17534, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17534, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17538, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17538, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17542, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17542, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4695,21 +4587,19 @@ static void bolliger_mabillard_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17531, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17531, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17535, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17535, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17539, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17539, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17543, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17543, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4724,21 +4614,19 @@ static void bolliger_mabillard_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17532, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17532, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17536, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17536, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17540, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17540, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17544, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17544, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4756,26 +4644,24 @@ static void bolliger_mabillard_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17533, 0, 0, 16, 16, 3, height, 16, 0, - height); - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17533, 0, 0, 16, 16, 3, height, 16, 0, height); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17537, 0, 0, 16, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17537, 0, 0, 16, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17541, 0, 0, 16, 18, 3, height, 0, 16, - height); - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17541, 0, 0, 16, 18, 3, height, 0, 16, height); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17545, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17545, 0, 0, 16, 16, 3, height, 16, 16, height); - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4790,7 +4676,7 @@ static void bolliger_mabillard_track_right_eighth_to_diag( template static void bolliger_mabillard_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4800,7 +4686,7 @@ static void bolliger_mabillard_track_left_eighth_to_orthogonal( template static void bolliger_mabillard_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4810,7 +4696,7 @@ static void bolliger_mabillard_track_right_eighth_to_orthogonal( template static void bolliger_mabillard_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4820,24 +4706,22 @@ static void bolliger_mabillard_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17578, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17578, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17582, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17582, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17586, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17586, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17590, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17590, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4851,22 +4735,20 @@ static void bolliger_mabillard_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17579, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17579, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17583, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17583, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17587, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17587, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17591, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17591, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4881,22 +4763,20 @@ static void bolliger_mabillard_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17580, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17580, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17584, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17584, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17588, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17588, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17592, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17592, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4914,26 +4794,25 @@ static void bolliger_mabillard_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17581, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17581, 0, 0, 16, 16, 3, height, 16, 16, height); - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17585, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17585, 0, 0, 16, 18, 0, height, 0, 16, height + 27); - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17589, 0, 0, 16, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17589, 0, 0, 16, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17593, 0, 0, 16, 16, 3, height, 16, 0, - height); - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17593, 0, 0, 16, 16, 3, height, 16, 0, height); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4948,7 +4827,7 @@ static void bolliger_mabillard_track_left_eighth_bank_to_diag( template static void bolliger_mabillard_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4958,24 +4837,22 @@ static void bolliger_mabillard_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17562, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17562, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17566, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17566, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17570, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17570, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17574, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17574, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4989,22 +4866,20 @@ static void bolliger_mabillard_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17563, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17563, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17567, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17567, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17571, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17571, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17575, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17575, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5019,22 +4894,20 @@ static void bolliger_mabillard_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17564, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17564, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17568, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17568, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17572, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17572, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17576, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17576, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5052,26 +4925,25 @@ static void bolliger_mabillard_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17565, 0, 0, 16, 16, 3, height, 16, 0, - height); - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17565, 0, 0, 16, 16, 3, height, 16, 0, height); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17569, 0, 0, 16, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17569, 0, 0, 16, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17573, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17573, 0, 0, 16, 18, 0, height, 0, 16, height + 27); - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17577, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17577, 0, 0, 16, 16, 3, height, 16, 16, height); - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5086,7 +4958,7 @@ static void bolliger_mabillard_track_right_eighth_bank_to_diag( template static void bolliger_mabillard_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5096,7 +4968,7 @@ static void bolliger_mabillard_track_left_eighth_bank_to_orthogonal( template static void bolliger_mabillard_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5106,7 +4978,7 @@ static void bolliger_mabillard_track_right_eighth_bank_to_orthogonal( template static void bolliger_mabillard_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5118,7 +4990,7 @@ static void bolliger_mabillard_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17861, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17861, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5129,7 +5001,7 @@ static void bolliger_mabillard_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17791, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17791, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5145,7 +5017,7 @@ static void bolliger_mabillard_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17858, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17858, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5156,7 +5028,7 @@ static void bolliger_mabillard_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17788, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17788, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5172,7 +5044,7 @@ static void bolliger_mabillard_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17860, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17860, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5183,7 +5055,7 @@ static void bolliger_mabillard_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17790, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17790, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5198,23 +5070,19 @@ static void bolliger_mabillard_track_diag_flat( switch (direction) { case 0: - metal_a_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17859, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17859, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5223,23 +5091,19 @@ static void bolliger_mabillard_track_diag_flat( switch (direction) { case 0: - metal_a_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17789, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17789, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5252,7 +5116,7 @@ static void bolliger_mabillard_track_diag_flat( template static void bolliger_mabillard_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5264,7 +5128,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5275,7 +5139,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5291,7 +5155,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5302,7 +5166,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5318,7 +5182,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5329,7 +5193,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5344,23 +5208,19 @@ static void bolliger_mabillard_track_diag_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5369,23 +5229,19 @@ static void bolliger_mabillard_track_diag_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5398,7 +5254,7 @@ static void bolliger_mabillard_track_diag_25_deg_up( template static void bolliger_mabillard_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5410,7 +5266,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5421,7 +5277,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5437,7 +5293,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5448,7 +5304,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5464,7 +5320,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5475,7 +5331,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5491,22 +5347,22 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5516,22 +5372,22 @@ static void bolliger_mabillard_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5544,7 +5400,7 @@ static void bolliger_mabillard_track_diag_60_deg_up( template static void bolliger_mabillard_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5556,7 +5412,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5567,7 +5423,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5583,7 +5439,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5594,7 +5450,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5610,7 +5466,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5621,7 +5477,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5636,23 +5492,19 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5661,23 +5513,19 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5690,7 +5538,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_up( template static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5702,7 +5550,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5713,7 +5561,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5729,7 +5577,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5740,7 +5588,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5756,7 +5604,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5767,7 +5615,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5783,22 +5631,22 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5808,22 +5656,22 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5836,7 +5684,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_60_deg_up( template static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5848,7 +5696,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5859,7 +5707,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5875,7 +5723,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5886,7 +5734,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5902,7 +5750,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5913,7 +5761,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5929,22 +5777,22 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, supportType, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5954,22 +5802,22 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, supportType, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5982,7 +5830,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_25_deg_up( template static void bolliger_mabillard_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5994,7 +5842,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6005,7 +5853,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6021,7 +5869,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6032,7 +5880,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6048,7 +5896,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6059,7 +5907,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6074,23 +5922,19 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6099,23 +5943,19 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6128,7 +5968,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_flat( template static void bolliger_mabillard_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6140,7 +5980,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6151,7 +5991,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6167,7 +6007,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6178,7 +6018,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6194,7 +6034,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6205,7 +6045,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6220,23 +6060,19 @@ static void bolliger_mabillard_track_diag_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6245,23 +6081,19 @@ static void bolliger_mabillard_track_diag_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6274,7 +6106,7 @@ static void bolliger_mabillard_track_diag_25_deg_down( template static void bolliger_mabillard_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6286,7 +6118,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6297,7 +6129,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6313,7 +6145,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6324,7 +6156,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6340,7 +6172,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6351,7 +6183,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6367,22 +6199,22 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6392,22 +6224,22 @@ static void bolliger_mabillard_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6420,7 +6252,7 @@ static void bolliger_mabillard_track_diag_60_deg_down( template static void bolliger_mabillard_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6432,7 +6264,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6443,7 +6275,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6458,7 +6290,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6469,7 +6301,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6484,7 +6316,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6495,7 +6327,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6509,23 +6341,19 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6534,23 +6362,19 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6564,7 +6388,7 @@ static void bolliger_mabillard_track_diag_flat_to_25_deg_down( template static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6576,7 +6400,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6587,7 +6411,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6603,7 +6427,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6614,7 +6438,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6630,7 +6454,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6641,7 +6465,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6657,22 +6481,22 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6682,22 +6506,22 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6710,7 +6534,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_60_deg_down( template static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6722,7 +6546,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6733,7 +6557,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6749,7 +6573,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6760,7 +6584,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6776,7 +6600,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6787,7 +6611,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6802,23 +6626,19 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6827,23 +6647,19 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6856,7 +6672,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_25_deg_down( template static void bolliger_mabillard_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6868,7 +6684,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6879,7 +6695,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6895,7 +6711,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6906,7 +6722,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6922,7 +6738,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6933,7 +6749,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6948,23 +6764,19 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6973,23 +6785,19 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7002,7 +6810,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_flat( template static void bolliger_mabillard_track_diag_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7014,7 +6822,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17889, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17889, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7025,7 +6833,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17819, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17819, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7041,7 +6849,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17886, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17886, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7052,7 +6860,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17816, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17816, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7068,7 +6876,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17888, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17888, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7079,7 +6887,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17818, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17818, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7094,23 +6902,19 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17887, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17887, -16, -16, 32, 32, 4, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7119,23 +6923,19 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17817, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17817, -16, -16, 32, 32, 4, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7148,7 +6948,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_up( template static void bolliger_mabillard_track_diag_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7160,7 +6960,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17893, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17893, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7171,7 +6971,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17823, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17823, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7187,7 +6987,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17890, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17890, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7198,7 +6998,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17820, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17820, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7214,7 +7014,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17892, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17892, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7225,7 +7025,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17822, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17822, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7241,22 +7041,22 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17891, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17891, -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7266,22 +7066,22 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17821, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17821, -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7294,7 +7094,7 @@ static void bolliger_mabillard_track_diag_60_deg_up_to_flat( template static void bolliger_mabillard_track_diag_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7306,7 +7106,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17891, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17891, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7317,7 +7117,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17821, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17821, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7333,7 +7133,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17892, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17892, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7344,7 +7144,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17822, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17822, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7360,7 +7160,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17890, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17890, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7371,7 +7171,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17820, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17820, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7387,22 +7187,22 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17893, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17893, -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7412,22 +7212,22 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, supportType, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17823, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17823, -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, supportType, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, supportType, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, supportType, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7440,7 +7240,7 @@ static void bolliger_mabillard_track_diag_flat_to_60_deg_down( template static void bolliger_mabillard_track_diag_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7452,7 +7252,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17887, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17887, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7463,7 +7263,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17817, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17817, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7479,7 +7279,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17888, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17888, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7490,7 +7290,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17818, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17818, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7506,7 +7306,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17886, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17886, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7517,7 +7317,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17816, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17816, -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -7532,23 +7332,19 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17889, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17889, -16, -16, 32, 32, 4, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7557,23 +7353,19 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( switch (direction) { case 0: - metal_b_supports_paint_setup( - session, supportType, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17819, -16, -16, 32, 32, 4, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17819, -16, -16, 32, 32, 4, height, -16, -16, height); - metal_b_supports_paint_setup( - session, supportType, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup( - session, supportType, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup( - session, supportType, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7586,7 +7378,7 @@ static void bolliger_mabillard_track_diag_60_deg_down_to_flat( template static void bolliger_mabillard_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7596,7 +7388,7 @@ static void bolliger_mabillard_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7609,10 +7401,10 @@ static void bolliger_mabillard_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7625,7 +7417,7 @@ static void bolliger_mabillard_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7637,19 +7429,19 @@ static void bolliger_mabillard_track_diag_flat_to_left_bank( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7661,7 +7453,7 @@ static void bolliger_mabillard_track_diag_flat_to_left_bank( template static void bolliger_mabillard_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7671,7 +7463,7 @@ static void bolliger_mabillard_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7684,7 +7476,7 @@ static void bolliger_mabillard_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7697,10 +7489,10 @@ static void bolliger_mabillard_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7712,19 +7504,19 @@ static void bolliger_mabillard_track_diag_flat_to_right_bank( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7736,7 +7528,7 @@ static void bolliger_mabillard_track_diag_flat_to_right_bank( template static void bolliger_mabillard_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7746,7 +7538,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7759,10 +7551,10 @@ static void bolliger_mabillard_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7775,7 +7567,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7787,19 +7579,19 @@ static void bolliger_mabillard_track_diag_left_bank_to_flat( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7811,7 +7603,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_flat( template static void bolliger_mabillard_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7821,7 +7613,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7834,7 +7626,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7847,10 +7639,10 @@ static void bolliger_mabillard_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7862,19 +7654,19 @@ static void bolliger_mabillard_track_diag_right_bank_to_flat( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7886,7 +7678,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_flat( template static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7896,7 +7688,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7909,10 +7701,10 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7925,7 +7717,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7937,19 +7729,19 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7961,7 +7753,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_up( template static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7971,7 +7763,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7984,7 +7776,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7997,10 +7789,10 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8012,19 +7804,19 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8036,7 +7828,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_up( template static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8046,7 +7838,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8059,10 +7851,10 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8075,7 +7867,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8087,19 +7879,19 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8111,7 +7903,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_left_bank( template static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8121,7 +7913,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8134,7 +7926,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8147,10 +7939,10 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8162,19 +7954,19 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8186,7 +7978,7 @@ static void bolliger_mabillard_track_diag_25_deg_up_to_right_bank( template static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8196,7 +7988,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8208,10 +8000,10 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8223,7 +8015,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8234,19 +8026,19 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8259,7 +8051,7 @@ static void bolliger_mabillard_track_diag_left_bank_to_25_deg_down( template static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8269,7 +8061,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8281,7 +8073,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8293,10 +8085,10 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8307,19 +8099,19 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8332,7 +8124,7 @@ static void bolliger_mabillard_track_diag_right_bank_to_25_deg_down( template static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8342,7 +8134,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8355,10 +8147,10 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8371,7 +8163,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8383,19 +8175,19 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8407,7 +8199,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_left_bank( template static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8417,7 +8209,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8430,7 +8222,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8443,10 +8235,10 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8458,19 +8250,19 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( switch (direction) { case 0: - metal_b_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_b_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_b_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_b_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_b_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8482,7 +8274,7 @@ static void bolliger_mabillard_track_diag_25_deg_down_to_right_bank( template static void bolliger_mabillard_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8492,7 +8284,7 @@ static void bolliger_mabillard_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8505,7 +8297,7 @@ static void bolliger_mabillard_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8518,7 +8310,7 @@ static void bolliger_mabillard_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8530,19 +8322,19 @@ static void bolliger_mabillard_track_diag_left_bank( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8554,7 +8346,7 @@ static void bolliger_mabillard_track_diag_left_bank( template static void bolliger_mabillard_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8564,7 +8356,7 @@ static void bolliger_mabillard_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8577,7 +8369,7 @@ static void bolliger_mabillard_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8590,7 +8382,7 @@ static void bolliger_mabillard_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8602,19 +8394,19 @@ static void bolliger_mabillard_track_diag_right_bank( switch (direction) { case 0: - metal_a_supports_paint_setup(session, supportType, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, height); - metal_a_supports_paint_setup(session, supportType, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - metal_a_supports_paint_setup(session, supportType, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup(session, supportType, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8626,7 +8418,7 @@ static void bolliger_mabillard_track_diag_right_bank( template static void bolliger_mabillard_track_left_bank_to_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8636,25 +8428,24 @@ static void bolliger_mabillard_track_left_bank_to_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17725, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17725, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17727, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17727, 0, 6, 32, 20, 3, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17731, 0, 6, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17731, 0, 6, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17729, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17729, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17723, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17723, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -8674,22 +8465,22 @@ static void bolliger_mabillard_track_left_bank_to_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17724, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17724, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17726, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17726, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17728, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17728, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17722, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17722, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8708,7 +8499,7 @@ static void bolliger_mabillard_track_left_bank_to_left_quarter_turn_3_25_deg_up( template static void bolliger_mabillard_track_right_bank_to_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8718,25 +8509,24 @@ static void bolliger_mabillard_track_right_bank_to_right_quarter_turn_3_25_deg_u { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17714, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17714, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17716, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17716, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17718, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17718, 0, 6, 32, 20, 3, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17730, 0, 6, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17730, 0, 6, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17720, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17720, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -8756,23 +8546,23 @@ static void bolliger_mabillard_track_right_bank_to_right_quarter_turn_3_25_deg_u { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17715, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17715, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17717, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17717, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17719, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17719, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17721, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17721, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8793,7 +8583,7 @@ static void bolliger_mabillard_track_right_bank_to_right_quarter_turn_3_25_deg_u template static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8803,23 +8593,23 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down_to_left_ban { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17717, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17717, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17719, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17719, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17721, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17721, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17715, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17715, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8841,25 +8631,24 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down_to_left_ban { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17716, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17716, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17718, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17718, 6, 0, 20, 32, 3, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17730, 6, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17730, 6, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17720, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17720, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17714, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17714, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8878,7 +8667,7 @@ static void bolliger_mabillard_track_left_quarter_turn_3_25_deg_down_to_left_ban template static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8888,22 +8677,22 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down_to_right_b { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17722, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17722, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17724, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17724, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17726, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17726, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17728, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17728, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_8); @@ -8923,25 +8712,24 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down_to_right_b { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17723, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17723, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17725, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17725, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17727, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17727, 6, 0, 20, 32, 3, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17731, 6, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17731, 6, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17729, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17729, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8960,7 +8748,7 @@ static void bolliger_mabillard_track_right_quarter_turn_3_25_deg_down_to_right_b template static void bolliger_mabillard_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); @@ -8970,20 +8758,20 @@ static void bolliger_mabillard_track_block_brakes( case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | _BolligerMabillardBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | _BolligerMabillardBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | _BolligerMabillardBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | _BolligerMabillardBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -8993,7 +8781,7 @@ static void bolliger_mabillard_track_block_brakes( template static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9003,23 +8791,22 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18025, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18025, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18027, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18027, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18029, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18029, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18023, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18023, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -9039,24 +8826,22 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18024, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18024, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18026, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18026, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18028, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18028, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18022, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18022, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -9075,7 +8860,7 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_up( template static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9085,23 +8870,22 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18014, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18014, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18016, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18016, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18018, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18018, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18020, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18020, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -9121,25 +8905,23 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18015, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 18015, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18017, 6, 0, 1, 32, 34, height, 27, 0, - height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 18017, 6, 0, 1, 32, 34, height, 27, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18019, 6, 0, 1, 32, 34, height, 27, 0, - height); - metal_a_supports_paint_setup(session, supportType, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 18019, 6, 0, 1, 32, 34, height, 27, 0, height); + metal_a_supports_paint_setup(session, supportType, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18021, 6, 0, 20, 32, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 18021, 6, 0, 20, 32, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9160,7 +8942,7 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_up( template static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -9170,7 +8952,7 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_3_25_deg_down( template static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -9180,7 +8962,7 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_3_25_deg_down( template static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9190,23 +8972,22 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17978, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17978, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17983, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17983, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17988, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17988, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17993, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17993, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -9223,22 +9004,19 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17979, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17979, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17984, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17984, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17989, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17989, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17994, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17994, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -9253,22 +9031,19 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17980, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17980, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17985, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17985, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17990, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17990, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17995, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17995, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -9283,23 +9058,19 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17981, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17981, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17986, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17986, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17991, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17991, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17996, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17996, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -9314,24 +9085,22 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17982, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17982, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17987, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17987, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17992, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17992, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17997, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17997, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -9350,7 +9119,7 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_up( template static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9360,23 +9129,22 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17958, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17958, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17963, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17963, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17968, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17968, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17973, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17973, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -9393,22 +9161,19 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17959, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17959, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17964, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17964, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17969, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17969, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17974, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17974, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -9423,22 +9188,19 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17960, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17960, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17965, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17965, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17970, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17970, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17975, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17975, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -9453,23 +9215,19 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17961, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17961, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17966, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17966, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17971, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17971, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17976, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17976, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -9484,24 +9242,22 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17962, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17962, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17967, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17967, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17972, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17972, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17977, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17977, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -9520,7 +9276,7 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_up( template static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -9530,7 +9286,7 @@ static void bolliger_mabillard_track_left_banked_quarter_turn_5_25_deg_down( template static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -9540,33 +9296,33 @@ static void bolliger_mabillard_track_right_banked_quarter_turn_5_25_deg_down( template static void bolliger_mabillard_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17922, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17922, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17923, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17923, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17930, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17930, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17924, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17924, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17925, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17925, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9583,33 +9339,33 @@ static void bolliger_mabillard_track_25_deg_up_to_left_banked_25_deg_up( template static void bolliger_mabillard_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17926, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17926, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17927, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17927, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17928, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17928, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17931, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17931, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17929, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17929, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9626,33 +9382,33 @@ static void bolliger_mabillard_track_25_deg_up_to_right_banked_25_deg_up( template static void bolliger_mabillard_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17932, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17932, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17933, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17933, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17940, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17940, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17934, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17934, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17935, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17935, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9669,33 +9425,33 @@ static void bolliger_mabillard_track_left_banked_25_deg_up_to_25_deg_up( template static void bolliger_mabillard_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17936, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17936, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17937, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17937, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17938, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17938, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17941, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17941, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17939, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17939, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9712,7 +9468,7 @@ static void bolliger_mabillard_track_right_banked_25_deg_up_to_25_deg_up( template static void bolliger_mabillard_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_banked_25_deg_up_to_25_deg_up( @@ -9721,7 +9477,7 @@ static void bolliger_mabillard_track_25_deg_down_to_left_banked_25_deg_down( template static void bolliger_mabillard_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_banked_25_deg_up_to_25_deg_up( @@ -9730,7 +9486,7 @@ static void bolliger_mabillard_track_25_deg_down_to_right_banked_25_deg_down( template static void bolliger_mabillard_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_right_banked_25_deg_up( @@ -9739,7 +9495,7 @@ static void bolliger_mabillard_track_left_banked_25_deg_down_to_25_deg_down( template static void bolliger_mabillard_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_25_deg_up_to_left_banked_25_deg_up( @@ -9748,31 +9504,31 @@ static void bolliger_mabillard_track_right_banked_25_deg_down_to_25_deg_down( template static void bolliger_mabillard_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17942, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17942, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17943, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17943, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17944, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17944, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17945, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17945, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9789,31 +9545,31 @@ static void bolliger_mabillard_track_left_banked_flat_to_left_banked_25_deg_up( template static void bolliger_mabillard_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17946, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17946, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17947, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17947, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17948, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17948, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17949, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17949, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9830,31 +9586,31 @@ static void bolliger_mabillard_track_right_banked_flat_to_right_banked_25_deg_up template static void bolliger_mabillard_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17950, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17950, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17951, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17951, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17952, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17952, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17953, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17953, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9871,31 +9627,31 @@ static void bolliger_mabillard_track_left_banked_25_deg_up_to_left_banked_flat( template static void bolliger_mabillard_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17954, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17954, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17955, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17955, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17956, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17956, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17957, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17957, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9912,7 +9668,7 @@ static void bolliger_mabillard_track_right_banked_25_deg_up_to_right_banked_flat template static void bolliger_mabillard_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_banked_25_deg_up_to_right_banked_flat( @@ -9921,7 +9677,7 @@ static void bolliger_mabillard_track_left_banked_flat_to_left_banked_25_deg_down template static void bolliger_mabillard_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_banked_25_deg_up_to_left_banked_flat( @@ -9930,7 +9686,7 @@ static void bolliger_mabillard_track_right_banked_flat_to_right_banked_25_deg_do template static void bolliger_mabillard_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_banked_flat_to_right_banked_25_deg_up( @@ -9939,7 +9695,7 @@ static void bolliger_mabillard_track_left_banked_25_deg_down_to_left_banked_flat template static void bolliger_mabillard_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_banked_flat_to_left_banked_25_deg_up( @@ -9948,33 +9704,33 @@ static void bolliger_mabillard_track_right_banked_25_deg_down_to_right_banked_fl template static void bolliger_mabillard_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17894, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17894, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17895, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17895, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17902, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17902, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17896, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17896, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17897, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17897, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9991,33 +9747,33 @@ static void bolliger_mabillard_track_flat_to_left_banked_25_deg_up( template static void bolliger_mabillard_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17898, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17898, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17899, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17899, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17900, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17900, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17903, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17903, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17901, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17901, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10034,33 +9790,33 @@ static void bolliger_mabillard_track_flat_to_right_banked_25_deg_up( template static void bolliger_mabillard_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17904, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17904, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17905, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17905, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17912, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17912, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17906, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17906, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17907, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17907, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10077,33 +9833,33 @@ static void bolliger_mabillard_track_left_banked_25_deg_up_to_flat( template static void bolliger_mabillard_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17908, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17908, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17909, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17909, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17910, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17910, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17913, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17913, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17911, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17911, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10120,7 +9876,7 @@ static void bolliger_mabillard_track_right_banked_25_deg_up_to_flat( template static void bolliger_mabillard_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_banked_25_deg_up_to_flat( @@ -10129,7 +9885,7 @@ static void bolliger_mabillard_track_flat_to_left_banked_25_deg_down( template static void bolliger_mabillard_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_banked_25_deg_up_to_flat( @@ -10138,7 +9894,7 @@ static void bolliger_mabillard_track_flat_to_right_banked_25_deg_down( template static void bolliger_mabillard_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_flat_to_right_banked_25_deg_up( @@ -10147,7 +9903,7 @@ static void bolliger_mabillard_track_left_banked_25_deg_down_to_flat( template static void bolliger_mabillard_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_flat_to_left_banked_25_deg_up( @@ -10156,7 +9912,7 @@ static void bolliger_mabillard_track_right_banked_25_deg_down_to_flat( template static void bolliger_mabillard_track_left_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10166,28 +9922,28 @@ static void bolliger_mabillard_track_left_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17998, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17998, 0, 0, 2, 20, 63, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17999, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17999, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18007, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18007, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18008, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18008, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18001, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18001, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18009, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18009, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; } @@ -10203,7 +9959,7 @@ static void bolliger_mabillard_track_left_quarter_turn_1_90_deg_up( template static void bolliger_mabillard_track_right_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10213,28 +9969,28 @@ static void bolliger_mabillard_track_right_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18002, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18002, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18010, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18010, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18011, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18011, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18004, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18004, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18012, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18012, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18005, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18005, 0, 0, 2, 20, 63, height, 4, 6, height + 8); break; } @@ -10250,7 +10006,7 @@ static void bolliger_mabillard_track_right_quarter_turn_1_90_deg_up( template static void bolliger_mabillard_track_left_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_quarter_turn_1_90_deg_up( @@ -10259,7 +10015,7 @@ static void bolliger_mabillard_track_left_quarter_turn_1_90_deg_down( template static void bolliger_mabillard_track_right_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_quarter_turn_1_90_deg_up( @@ -10269,7 +10025,7 @@ static void bolliger_mabillard_track_right_quarter_turn_1_90_deg_down( /* The following track elements used to be specific to the Vertical Roller Coaster */ template static void bolliger_mabillard_track_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -10278,28 +10034,26 @@ static void bolliger_mabillard_track_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17464, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17464, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17465, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17465, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17468, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17468, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17466, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17466, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17469, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17469, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17467, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17467, 0, 0, 32, 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -10307,28 +10061,26 @@ static void bolliger_mabillard_track_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17452, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17452, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17453, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17453, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17456, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17456, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17454, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17454, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17457, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17457, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17455, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17455, 0, 0, 32, 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10345,7 +10097,7 @@ static void bolliger_mabillard_track_flat_to_60_deg_up( template static void bolliger_mabillard_track_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -10354,28 +10106,26 @@ static void bolliger_mabillard_track_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17470, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17470, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17471, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17471, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17474, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17474, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17472, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17472, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17475, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17475, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17473, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17473, 0, 0, 32, 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -10383,28 +10133,26 @@ static void bolliger_mabillard_track_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17458, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17458, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17459, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17459, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17462, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17462, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17460, 0, 0, 1, 24, 43, height, 29, 4, - height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17460, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17463, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17463, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17461, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17461, 0, 0, 32, 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10421,7 +10169,7 @@ static void bolliger_mabillard_track_60_deg_up_to_flat( template static void bolliger_mabillard_track_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_60_deg_up_to_flat( @@ -10430,7 +10178,7 @@ static void bolliger_mabillard_track_flat_to_60_deg_down( template static void bolliger_mabillard_track_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_flat_to_60_deg_up( @@ -10439,33 +10187,33 @@ static void bolliger_mabillard_track_60_deg_down_to_flat( template static void bolliger_mabillard_track_brake_for_drop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17482, 0, 0, 1, 24, 43, height, 29, 4, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17482, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17485, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17485, 0, 0, 32, 2, 43, height, 0, 4, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17483, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17483, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17480, 0, 0, 32, 27, 4, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17480, 0, 0, 32, 27, 4, height, 0, 2, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17481, 0, 0, 1, 24, 43, height, 29, 4, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 17481, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17484, 0, 0, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17484, 0, 0, 32, 2, 43, height, 0, 4, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 24, TUNNEL_SQUARE_FLAT); @@ -10482,7 +10230,7 @@ static void bolliger_mabillard_track_brake_for_drop( /* The following track elements used to be specific to the Steel Twister */ template static void bolliger_mabillard_track_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10492,22 +10240,22 @@ static void bolliger_mabillard_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -10521,25 +10269,24 @@ static void bolliger_mabillard_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, height); - metal_a_supports_paint_setup(session, supportType, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, - height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10550,20 +10297,20 @@ static void bolliger_mabillard_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -10579,19 +10326,19 @@ static void bolliger_mabillard_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -10607,7 +10354,7 @@ static void bolliger_mabillard_track_half_loop_up( template static void bolliger_mabillard_track_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_half_loop_up(session, ride, 3 - trackSequence, direction, height, trackElement); @@ -10615,7 +10362,7 @@ static void bolliger_mabillard_track_half_loop_down( template static void bolliger_mabillard_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10625,22 +10372,22 @@ static void bolliger_mabillard_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17690, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17690, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17693, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17693, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17696, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17696, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17699, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17699, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } @@ -10658,22 +10405,22 @@ static void bolliger_mabillard_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17691, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17691, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17694, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17694, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17697, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17697, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17700, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17700, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -10685,22 +10432,22 @@ static void bolliger_mabillard_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17692, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17692, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17695, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17695, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17698, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17698, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17701, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17701, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -10708,7 +10455,7 @@ static void bolliger_mabillard_track_left_corkscrew_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - metal_a_supports_paint_setup(session, supportType, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -10726,7 +10473,7 @@ static void bolliger_mabillard_track_left_corkscrew_up( template static void bolliger_mabillard_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10736,26 +10483,26 @@ static void bolliger_mabillard_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17702, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17702, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17705, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17705, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17708, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17708, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17711, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17711, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -10770,22 +10517,22 @@ static void bolliger_mabillard_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17703, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17703, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17706, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17706, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17709, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17709, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17712, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17712, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -10797,22 +10544,22 @@ static void bolliger_mabillard_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17704, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17704, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17707, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17707, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17710, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17710, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17713, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17713, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -10820,7 +10567,7 @@ static void bolliger_mabillard_track_right_corkscrew_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - metal_a_supports_paint_setup(session, supportType, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -10838,7 +10585,7 @@ static void bolliger_mabillard_track_right_corkscrew_up( template static void bolliger_mabillard_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_corkscrew_up( @@ -10847,7 +10594,7 @@ static void bolliger_mabillard_track_left_corkscrew_down( template static void bolliger_mabillard_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_corkscrew_up( @@ -10856,7 +10603,7 @@ static void bolliger_mabillard_track_right_corkscrew_down( template static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10866,24 +10613,24 @@ static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18030, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18030, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18034, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18034, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18038, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18038, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18042, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18042, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10898,24 +10645,24 @@ static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18031, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18031, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18035, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18035, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18039, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18039, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18043, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18043, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10926,24 +10673,24 @@ static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18032, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18032, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18036, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18036, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18040, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18040, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18044, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18044, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10954,26 +10701,24 @@ static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18033, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18033, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18037, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18037, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18041, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18041, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18045, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18045, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -10994,7 +10739,7 @@ static void bolliger_mabillard_track_flat_to_60_deg_up_long_base( /** rct2: 0x008AC104 */ template static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11004,26 +10749,24 @@ static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18046, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18046, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18050, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18050, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18054, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18054, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18058, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18058, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -11038,24 +10781,24 @@ static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18047, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18047, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18051, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18051, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18055, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18055, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18059, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18059, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -11066,24 +10809,24 @@ static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18048, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18048, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18052, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18052, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18056, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18056, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18060, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18060, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -11094,24 +10837,24 @@ static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18049, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18049, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18053, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18053, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18057, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18057, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18061, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18061, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -11131,7 +10874,7 @@ static void bolliger_mabillard_track_60_deg_up_to_flat_long_base( template static void bolliger_mabillard_track_60_deg_down_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_flat_to_60_deg_up_long_base( @@ -11140,7 +10883,7 @@ static void bolliger_mabillard_track_60_deg_down_to_flat_long_base( template static void bolliger_mabillard_track_flat_to_60_deg_down_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_60_deg_up_to_flat_long_base( @@ -11149,7 +10892,7 @@ static void bolliger_mabillard_track_flat_to_60_deg_down_long_base( template static void bolliger_mabillard_track_left_barrel_roll_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11159,35 +10902,35 @@ static void bolliger_mabillard_track_left_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17642, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17642, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17666, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17666, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 2, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17645, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17645, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17669, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17669, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 3, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17648, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17648, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17672, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17672, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17651, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17651, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17675, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17675, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 0, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11204,30 +10947,30 @@ static void bolliger_mabillard_track_left_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17643, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17643, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17667, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17667, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17646, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17646, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17670, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17670, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17649, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17649, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17673, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17673, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17652, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17652, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17676, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17676, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -11243,30 +10986,30 @@ static void bolliger_mabillard_track_left_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17644, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17644, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17668, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17668, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17647, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17647, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17671, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17671, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17650, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17650, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17674, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17674, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17653, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17653, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17677, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17677, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -11289,7 +11032,7 @@ static void bolliger_mabillard_track_left_barrel_roll_up_to_down( template static void bolliger_mabillard_track_right_barrel_roll_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11299,35 +11042,35 @@ static void bolliger_mabillard_track_right_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17654, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17654, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17678, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17678, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 0, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 0, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17657, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17657, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17681, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17681, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 2, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 2, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17660, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17660, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17684, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17684, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 3, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 3, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17663, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17663, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17687, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17687, 0, 0, 32, 20, 0, height, 0, 6, height + 28); - metal_a_supports_paint_setup(session, supportType, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11344,30 +11087,30 @@ static void bolliger_mabillard_track_right_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17655, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17655, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17679, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17679, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17658, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17658, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17682, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17682, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17661, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17661, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17685, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17685, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17664, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17664, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17688, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17688, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -11383,30 +11126,30 @@ static void bolliger_mabillard_track_right_barrel_roll_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17656, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17656, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17680, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17680, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17659, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17659, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17683, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17683, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17662, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17662, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17686, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17686, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17665, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17665, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17689, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17689, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -11429,7 +11172,7 @@ static void bolliger_mabillard_track_right_barrel_roll_up_to_down( template static void bolliger_mabillard_track_left_barrel_roll_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_barrel_roll_up_to_down( @@ -11438,7 +11181,7 @@ static void bolliger_mabillard_track_left_barrel_roll_down_to_up( template static void bolliger_mabillard_track_right_barrel_roll_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_barrel_roll_up_to_down( @@ -11447,29 +11190,29 @@ static void bolliger_mabillard_track_right_barrel_roll_down_to_up( template static void bolliger_mabillard_track_powered_lift( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17476, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17476, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17477, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17477, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17478, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17478, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17479, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17479, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -11485,7 +11228,7 @@ static void bolliger_mabillard_track_powered_lift( template static void bolliger_mabillard_track_left_large_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11495,22 +11238,22 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17732, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17732, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17739, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17739, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17746, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17746, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17753, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17753, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -11524,22 +11267,22 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17733, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17733, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17740, 0, 0, 32, 20, 9, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17740, 0, 0, 32, 20, 9, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17747, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17747, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17754, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17754, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 72, 0x20); @@ -11549,22 +11292,21 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17734, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17734, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17741, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17741, 0, 0, 32, 16, 0, height, 0, 0, height + 70); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17748, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17748, 0, 0, 32, 16, 0, height, 0, 16, height + 70); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17755, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17755, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -11579,26 +11321,25 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17735, 0, 0, 32, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 5, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17735, 0, 0, 32, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 5, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17742, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17742, 0, 0, 32, 16, 0, height, 0, 0, height + 200); - metal_a_supports_paint_setup(session, supportType, 6, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 6, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17749, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17749, 0, 0, 32, 16, 0, height, 0, 16, height + 200); - metal_a_supports_paint_setup(session, supportType, 8, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 8, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17756, 0, 0, 32, 16, 3, height, 0, 16, - height); - metal_a_supports_paint_setup(session, supportType, 7, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17756, 0, 0, 32, 16, 3, height, 0, 16, height); + metal_a_supports_paint_setup(session, supportType, 7, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11613,23 +11354,22 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17736, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17736, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17743, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17743, 0, 0, 16, 16, 0, height, 0, 16, height + 110); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17750, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17750, 0, 0, 16, 16, 0, height, 0, 0, height + 100); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17757, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17757, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -11641,22 +11381,21 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17737, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17737, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17744, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17744, 0, 0, 32, 16, 0, height, 0, 16, height + 200); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17751, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17751, 0, 0, 32, 16, 0, height, 0, 0, height + 200); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17758, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17758, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -11671,22 +11410,22 @@ static void bolliger_mabillard_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17738, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17738, 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17745, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17745, 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17752, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17752, 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17759, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17759, 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; } @@ -11706,7 +11445,7 @@ static void bolliger_mabillard_track_left_large_half_loop_up( template static void bolliger_mabillard_track_right_large_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11716,22 +11455,22 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17781, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17781, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17774, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17774, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17767, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17767, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17760, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17760, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -11745,22 +11484,22 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17782, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17782, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17775, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17775, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17768, 0, 0, 32, 20, 9, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17768, 0, 0, 32, 20, 9, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17761, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17761, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, supportType, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 72, 0x20); @@ -11770,22 +11509,21 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17783, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17783, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17776, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17776, 0, 0, 32, 16, 0, height, 0, 16, height + 70); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17769, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17769, 0, 0, 32, 16, 0, height, 0, 0, height + 70); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17762, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17762, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -11800,26 +11538,25 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17784, 0, 0, 32, 16, 3, height, 0, 16, - height); - metal_a_supports_paint_setup(session, supportType, 8, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17784, 0, 0, 32, 16, 3, height, 0, 16, height); + metal_a_supports_paint_setup(session, supportType, 8, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17777, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17777, 0, 0, 32, 16, 0, height, 0, 16, height + 200); - metal_a_supports_paint_setup(session, supportType, 7, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 7, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17770, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17770, 0, 0, 32, 16, 0, height, 0, 0, height + 200); - metal_a_supports_paint_setup(session, supportType, 5, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 5, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17763, 0, 0, 32, 16, 3, height, 0, 0, height); - metal_a_supports_paint_setup(session, supportType, 6, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 17763, 0, 0, 32, 16, 3, height, 0, 0, height); + metal_a_supports_paint_setup(session, supportType, 6, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11834,22 +11571,21 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17785, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17785, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17778, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17778, 0, 0, 16, 16, 0, height, 0, 0, height + 100); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17771, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17771, 0, 0, 16, 16, 0, height, 0, 16, height + 110); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17764, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17764, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -11862,22 +11598,21 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17786, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17786, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17779, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17779, 0, 0, 32, 16, 0, height, 0, 0, height + 200); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17772, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17772, 0, 0, 32, 16, 0, height, 0, 16, height + 200); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17765, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17765, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -11892,22 +11627,22 @@ static void bolliger_mabillard_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17787, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17787, 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17780, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17780, 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17773, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17773, 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17766, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17766, 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; } @@ -11927,7 +11662,7 @@ static void bolliger_mabillard_track_right_large_half_loop_up( template static void bolliger_mabillard_track_right_large_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_right_large_half_loop_up( @@ -11936,7 +11671,7 @@ static void bolliger_mabillard_track_right_large_half_loop_down( template static void bolliger_mabillard_track_left_large_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_left_large_half_loop_up( @@ -11945,7 +11680,7 @@ static void bolliger_mabillard_track_left_large_half_loop_down( template static void bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11955,22 +11690,22 @@ static void bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18062, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18062, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18065, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18065, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18068, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18068, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18071, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18071, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -11983,23 +11718,21 @@ static void bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18063, 0, 0, 2, 20, 31, height, -8, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18063, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18066, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18066, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18069, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18069, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18072, 0, 0, 2, 20, 31, height, -8, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18072, 0, 0, 2, 20, 31, height, -8, 6, height); break; } paint_util_set_segment_support_height( @@ -12011,22 +11744,22 @@ static void bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18064, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18064, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18067, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18067, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18070, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18070, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18073, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18073, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -12043,7 +11776,7 @@ static void bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( template static void bolliger_mabillard_track_inverted_flat_to_90_deg_quarter_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bolliger_mabillard_track_90_deg_to_inverted_flat_quarter_loop_up( @@ -12052,7 +11785,7 @@ static void bolliger_mabillard_track_inverted_flat_to_90_deg_quarter_loop_down( template void bolliger_mabillard_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { // These offsets could be moved to the g2.dat file when that supports offsets. @@ -12066,19 +11799,19 @@ void bolliger_mabillard_track_booster( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_BM_BOOSTER_NE_SW, ne_sw_offsetX, ne_sw_offsetY, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_BM_BOOSTER_NE_SW, ne_sw_offsetX, ne_sw_offsetY, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_BM_BOOSTER_NW_SE, nw_se_offsetX, nw_se_offsetY, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_BM_BOOSTER_NW_SE, nw_se_offsetX, nw_se_offsetY, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/CompactInvertedCoaster.cpp b/src/openrct2/ride/coaster/CompactInvertedCoaster.cpp index 650bf19665..19314e94b6 100644 --- a/src/openrct2/ride/coaster/CompactInvertedCoaster.cpp +++ b/src/openrct2/ride/coaster/CompactInvertedCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008AE6E0 */ static void compact_inverted_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -30,13 +30,13 @@ static void compact_inverted_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26557, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26557, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26558, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26558, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -48,13 +48,13 @@ static void compact_inverted_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -62,10 +62,10 @@ static void compact_inverted_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -74,7 +74,7 @@ static void compact_inverted_rc_track_flat( /** rct2: 0x008AE950, 0x008AE960, 0x008AE970 */ static void compact_inverted_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -85,14 +85,14 @@ static void compact_inverted_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -101,7 +101,7 @@ static void compact_inverted_rc_track_station( /** rct2: 0x008AE6F0 */ static void compact_inverted_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -110,22 +110,22 @@ static void compact_inverted_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26621, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26621, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26622, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26622, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26623, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26623, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26624, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26624, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -136,22 +136,22 @@ static void compact_inverted_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26569, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26569, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26570, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26570, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26571, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26571, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26572, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26572, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -159,25 +159,25 @@ static void compact_inverted_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -195,7 +195,7 @@ static void compact_inverted_rc_track_25_deg_up( /** rct2: 0x008AE700 */ static void compact_inverted_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -204,22 +204,22 @@ static void compact_inverted_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26637, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26637, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26638, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26638, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26639, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26639, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26640, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26640, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; } @@ -230,22 +230,22 @@ static void compact_inverted_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26585, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26585, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26586, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26586, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26587, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26587, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26588, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26588, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; } @@ -265,7 +265,7 @@ static void compact_inverted_rc_track_60_deg_up( /** rct2: 0x008AE710 */ static void compact_inverted_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -274,22 +274,22 @@ static void compact_inverted_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26613, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26613, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26614, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26614, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26615, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26615, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26616, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26616, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -300,22 +300,22 @@ static void compact_inverted_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26561, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26561, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26562, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26562, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26563, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26563, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26564, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26564, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -323,25 +323,25 @@ static void compact_inverted_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -359,7 +359,7 @@ static void compact_inverted_rc_track_flat_to_25_deg_up( /** rct2: 0x008AE720 */ static void compact_inverted_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -368,28 +368,28 @@ static void compact_inverted_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26625, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26625, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26629, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26629, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26626, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26626, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26630, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26630, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26627, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26627, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26628, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26628, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -400,28 +400,28 @@ static void compact_inverted_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26573, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26573, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26577, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26577, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26574, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26574, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26578, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26578, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26575, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26575, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26576, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26576, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -441,7 +441,7 @@ static void compact_inverted_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008AE730 */ static void compact_inverted_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -450,28 +450,28 @@ static void compact_inverted_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26631, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26631, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26635, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26635, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26632, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26632, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26636, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26636, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26633, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26633, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26634, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26634, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -482,28 +482,28 @@ static void compact_inverted_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26579, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26579, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26583, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26583, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26580, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26580, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26584, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26584, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26581, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26581, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26582, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26582, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -511,25 +511,25 @@ static void compact_inverted_rc_track_60_deg_up_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 70, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 70, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 70, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 70, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 70, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 70, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 70, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 70, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -547,7 +547,7 @@ static void compact_inverted_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008AE740 */ static void compact_inverted_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -556,22 +556,22 @@ static void compact_inverted_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26617, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26617, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26618, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26618, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26619, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26619, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26620, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26620, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -582,22 +582,22 @@ static void compact_inverted_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26565, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26565, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26566, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26566, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26567, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26567, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26568, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26568, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -605,25 +605,25 @@ static void compact_inverted_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -641,7 +641,7 @@ static void compact_inverted_rc_track_25_deg_up_to_flat( /** rct2: 0x008AE750 */ static void compact_inverted_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -649,7 +649,7 @@ static void compact_inverted_rc_track_25_deg_down( /** rct2: 0x008AE760 */ static void compact_inverted_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -657,7 +657,7 @@ static void compact_inverted_rc_track_60_deg_down( /** rct2: 0x008AE770 */ static void compact_inverted_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -665,7 +665,7 @@ static void compact_inverted_rc_track_flat_to_25_deg_down( /** rct2: 0x008AE780 */ static void compact_inverted_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -673,7 +673,7 @@ static void compact_inverted_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008AE790 */ static void compact_inverted_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -681,7 +681,7 @@ static void compact_inverted_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008AE7A0 */ static void compact_inverted_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -689,7 +689,7 @@ static void compact_inverted_rc_track_25_deg_down_to_flat( /** rct2: 0x008AE7B0 */ static void compact_inverted_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -699,22 +699,22 @@ static void compact_inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26694, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26694, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26699, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26699, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26704, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26704, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26689, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26689, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -723,7 +723,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -739,20 +739,20 @@ static void compact_inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26693, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26693, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26698, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26698, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26703, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26703, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26688, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26688, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -768,22 +768,22 @@ static void compact_inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26692, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26692, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26697, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26697, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26702, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26702, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26687, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26687, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -798,20 +798,20 @@ static void compact_inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26691, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26691, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26696, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26696, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26701, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26701, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26686, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26686, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; } @@ -827,22 +827,22 @@ static void compact_inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26690, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26690, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26695, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26695, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26700, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26700, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26685, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26685, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -851,7 +851,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -869,7 +869,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5( /** rct2: 0x008AE7C0 */ static void compact_inverted_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -878,29 +878,29 @@ static void compact_inverted_rc_track_right_quarter_turn_5( /** rct2: 0x008AE7D0 */ static void compact_inverted_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -909,10 +909,10 @@ static void compact_inverted_rc_track_flat_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -921,29 +921,29 @@ static void compact_inverted_rc_track_flat_to_left_bank( /** rct2: 0x008AE7E0 */ static void compact_inverted_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -952,10 +952,10 @@ static void compact_inverted_rc_track_flat_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -964,29 +964,29 @@ static void compact_inverted_rc_track_flat_to_right_bank( /** rct2: 0x008AE7F0 */ static void compact_inverted_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -995,10 +995,10 @@ static void compact_inverted_rc_track_left_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -1007,29 +1007,29 @@ static void compact_inverted_rc_track_left_bank_to_flat( /** rct2: 0x008AE800 */ static void compact_inverted_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1038,10 +1038,10 @@ static void compact_inverted_rc_track_right_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -1050,7 +1050,7 @@ static void compact_inverted_rc_track_right_bank_to_flat( /** rct2: 0x008AE810 */ static void compact_inverted_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1060,22 +1060,22 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26738, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26738, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26743, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26743, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26748, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26748, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26733, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26733, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1084,7 +1084,7 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1100,20 +1100,20 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26737, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26737, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26742, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26742, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26747, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26747, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26732, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26732, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -1129,22 +1129,22 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26736, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26736, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26741, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26741, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26746, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26746, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26731, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26731, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1159,20 +1159,20 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26735, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26735, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26740, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26740, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26745, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26745, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26730, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26730, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; } @@ -1188,22 +1188,22 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26734, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26734, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26739, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26739, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26744, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26744, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26729, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26729, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -1212,7 +1212,7 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1230,7 +1230,7 @@ static void compact_inverted_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008AE820 */ static void compact_inverted_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1240,29 +1240,29 @@ static void compact_inverted_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008AE830 */ static void compact_inverted_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26665, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26665, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26666, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26666, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26667, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26667, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26668, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26668, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1271,25 +1271,25 @@ static void compact_inverted_rc_track_left_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1307,29 +1307,29 @@ static void compact_inverted_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008AE840 */ static void compact_inverted_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26669, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26669, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26670, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26670, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26671, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26671, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26672, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26672, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1338,25 +1338,25 @@ static void compact_inverted_rc_track_right_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1374,29 +1374,29 @@ static void compact_inverted_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008AE850 */ static void compact_inverted_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26673, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26673, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26674, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26674, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26675, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26675, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26676, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26676, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1405,25 +1405,25 @@ static void compact_inverted_rc_track_25_deg_up_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1441,29 +1441,29 @@ static void compact_inverted_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008AE860 */ static void compact_inverted_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26677, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26677, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26678, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26678, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26679, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26679, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26680, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26680, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1472,25 +1472,25 @@ static void compact_inverted_rc_track_25_deg_up_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1508,7 +1508,7 @@ static void compact_inverted_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008AE870 */ static void compact_inverted_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1516,7 +1516,7 @@ static void compact_inverted_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008AE880 */ static void compact_inverted_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1524,7 +1524,7 @@ static void compact_inverted_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008AE890 */ static void compact_inverted_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1532,7 +1532,7 @@ static void compact_inverted_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008AE8A0 */ static void compact_inverted_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1540,29 +1540,29 @@ static void compact_inverted_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008AE8B0 */ static void compact_inverted_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26681, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26681, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26682, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26682, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26683, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26683, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26684, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26684, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1571,10 +1571,10 @@ static void compact_inverted_rc_track_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -1583,7 +1583,7 @@ static void compact_inverted_rc_track_left_bank( /** rct2: 0x008AE8C0 */ static void compact_inverted_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1591,7 +1591,7 @@ static void compact_inverted_rc_track_right_bank( /** rct2: 0x008AE8D0 */ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1601,19 +1601,19 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26949, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26949, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26954, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26954, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26959, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26959, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26964, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26964, 0, 6, 32, 20, 3, height + 29); break; } @@ -1621,7 +1621,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1637,19 +1637,19 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26950, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26950, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26955, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26955, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26960, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26960, 0, 16, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26965, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26965, 0, 16, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1664,19 +1664,19 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26951, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26951, 0, 16, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26956, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26956, 16, 16, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26961, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26961, 16, 0, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26966, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26966, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1691,19 +1691,19 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26952, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26952, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26957, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26957, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26962, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26962, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26967, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26967, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1718,19 +1718,19 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26953, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26953, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26958, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26958, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26963, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26963, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26968, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26968, 6, 0, 20, 32, 3, height + 29); break; } @@ -1738,7 +1738,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1756,7 +1756,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008AE8E0 */ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1766,19 +1766,19 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26929, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26929, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26934, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26934, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26939, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26939, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26944, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26944, 0, 6, 32, 20, 3, height + 29); break; } @@ -1786,7 +1786,7 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1802,19 +1802,19 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26930, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26930, 0, 16, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26935, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26935, 0, 16, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26940, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26940, 0, 0, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26945, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26945, 0, 0, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1829,19 +1829,19 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26931, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26931, 0, 0, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26936, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26936, 16, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26941, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26941, 16, 16, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26946, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26946, 0, 16, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1856,19 +1856,19 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26932, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26932, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26937, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26937, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26942, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26942, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26947, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26947, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1883,19 +1883,19 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26933, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26933, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26938, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26938, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26943, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26943, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26948, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26948, 6, 0, 20, 32, 3, height + 29); break; } @@ -1903,7 +1903,7 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1921,7 +1921,7 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008AE8F0 */ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1931,7 +1931,7 @@ static void compact_inverted_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008AE900 */ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1941,7 +1941,7 @@ static void compact_inverted_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008AE910 */ static void compact_inverted_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1951,22 +1951,22 @@ static void compact_inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1974,7 +1974,7 @@ static void compact_inverted_rc_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1987,20 +1987,20 @@ static void compact_inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; } @@ -2014,11 +2014,11 @@ static void compact_inverted_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2029,21 +2029,21 @@ static void compact_inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 29); break; } @@ -2056,11 +2056,11 @@ static void compact_inverted_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2071,22 +2071,22 @@ static void compact_inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2094,7 +2094,7 @@ static void compact_inverted_rc_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2112,7 +2112,7 @@ static void compact_inverted_rc_track_s_bend_left( /** rct2: 0x008AE920 */ static void compact_inverted_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2122,22 +2122,22 @@ static void compact_inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2145,7 +2145,7 @@ static void compact_inverted_rc_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2158,21 +2158,21 @@ static void compact_inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 29); break; } @@ -2185,11 +2185,11 @@ static void compact_inverted_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2200,20 +2200,20 @@ static void compact_inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; } @@ -2227,11 +2227,11 @@ static void compact_inverted_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2242,22 +2242,22 @@ static void compact_inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2265,7 +2265,7 @@ static void compact_inverted_rc_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2283,7 +2283,7 @@ static void compact_inverted_rc_track_s_bend_right( /** rct2: 0x008AE930 */ static void compact_inverted_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2293,22 +2293,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27017, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27017, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27025, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27025, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27024, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27024, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27032, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27032, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; } @@ -2323,19 +2323,19 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2350,22 +2350,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27018, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27018, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27026, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27026, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27023, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27023, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27031, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27031, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; } @@ -2377,22 +2377,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27019, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27019, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27027, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27027, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27022, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27022, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27030, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27030, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; } @@ -2405,22 +2405,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27020, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27020, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27028, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27028, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27021, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27021, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27029, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27029, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2442,22 +2442,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27021, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27021, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27029, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27029, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27020, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27020, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27028, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27028, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2473,22 +2473,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27022, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27022, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27030, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27030, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27019, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27019, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27027, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27027, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; } @@ -2501,22 +2501,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27023, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27023, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27031, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27031, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27018, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27018, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27026, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27026, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; } @@ -2528,22 +2528,22 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27024, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27024, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27032, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27032, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27017, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27017, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27025, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27025, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2558,19 +2558,19 @@ static void compact_inverted_rc_track_left_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2590,7 +2590,7 @@ static void compact_inverted_rc_track_left_vertical_loop( /** rct2: 0x008AE940 */ static void compact_inverted_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2600,22 +2600,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27048, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27048, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27040, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27040, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27041, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27041, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27033, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27033, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2630,19 +2630,19 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2657,22 +2657,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27047, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27047, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27039, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27039, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27042, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27042, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27034, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27034, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2684,22 +2684,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27046, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27046, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27038, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27038, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27043, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27043, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27035, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27035, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; } @@ -2712,22 +2712,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27045, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27045, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27037, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27037, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27044, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27044, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27036, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27036, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2749,22 +2749,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27044, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27044, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27036, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27036, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27045, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27045, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27037, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27037, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2780,22 +2780,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27043, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27043, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27035, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27035, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27046, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27046, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27038, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27038, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; } @@ -2808,22 +2808,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27042, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27042, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27034, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27034, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27047, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27047, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27039, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27039, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; } @@ -2835,22 +2835,22 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27041, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27041, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27033, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27033, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27048, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27048, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27040, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27040, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2865,19 +2865,19 @@ static void compact_inverted_rc_track_right_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2897,7 +2897,7 @@ static void compact_inverted_rc_track_right_vertical_loop( /** rct2: 0x008AE980 */ static void compact_inverted_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2907,22 +2907,22 @@ static void compact_inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26710, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26710, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26713, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26713, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26716, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26716, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26707, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26707, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2931,7 +2931,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2947,21 +2947,21 @@ static void compact_inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26709, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26709, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26712, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26712, 0, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26715, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26715, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26706, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26706, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -2974,22 +2974,22 @@ static void compact_inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26708, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26708, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26711, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26711, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26714, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26714, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26705, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26705, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -2998,7 +2998,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3016,7 +3016,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3( /** rct2: 0x008AE990 */ static void compact_inverted_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3025,7 +3025,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3( /** rct2: 0x008AE9A0 */ static void compact_inverted_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3035,22 +3035,22 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26722, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26722, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26725, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26725, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26728, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26728, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26719, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26719, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -3059,7 +3059,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3075,22 +3075,22 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26721, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26721, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26724, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26724, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26727, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26727, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26718, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26718, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -3103,22 +3103,22 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26720, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26720, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26723, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26723, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26726, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26726, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26717, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26717, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -3127,7 +3127,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3145,7 +3145,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008AE9B0 */ static void compact_inverted_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3154,7 +3154,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008AE9C0 */ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3164,19 +3164,19 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26924, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26924, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26926, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26926, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26928, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26928, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26922, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26922, 0, 6, 32, 20, 3, height + 29); break; } @@ -3184,7 +3184,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3203,19 +3203,19 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26923, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26923, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26925, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26925, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26927, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26927, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26921, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26921, 6, 0, 20, 32, 3, height + 29); break; } @@ -3223,7 +3223,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3241,7 +3241,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008AE9D0 */ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3251,19 +3251,19 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26913, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26913, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26915, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26915, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26917, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26917, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26919, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26919, 0, 6, 32, 20, 3, height + 29); break; } @@ -3271,7 +3271,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3290,19 +3290,19 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26914, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26914, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26916, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26916, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26918, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26918, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26920, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26920, 6, 0, 20, 32, 3, height + 29); break; } @@ -3310,7 +3310,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3328,7 +3328,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008AE9E0 */ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3338,7 +3338,7 @@ static void compact_inverted_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008AE9F0 */ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3348,7 +3348,7 @@ static void compact_inverted_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008AEA00 */ static void compact_inverted_rc_track_left_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3358,19 +3358,19 @@ static void compact_inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26993, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26993, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26999, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26999, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26998, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26998, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27004, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27004, 0, 6, 32, 20, 3, height + 29); break; } @@ -3380,7 +3380,7 @@ static void compact_inverted_rc_track_left_twist_down_to_up( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3393,19 +3393,19 @@ static void compact_inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26994, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26994, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27000, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27000, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26997, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26997, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27003, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27003, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3420,23 +3420,23 @@ static void compact_inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26995, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26995, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27001, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27001, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26996, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26996, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27002, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27002, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3458,7 +3458,7 @@ static void compact_inverted_rc_track_left_twist_down_to_up( /** rct2: 0x008AEA10 */ static void compact_inverted_rc_track_right_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3468,19 +3468,19 @@ static void compact_inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27005, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27005, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27011, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27011, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27010, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27010, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27016, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27016, 0, 6, 32, 20, 3, height + 29); break; } @@ -3490,7 +3490,7 @@ static void compact_inverted_rc_track_right_twist_down_to_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3503,19 +3503,19 @@ static void compact_inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27006, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27006, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27012, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27012, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27009, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27009, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27015, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27015, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3530,23 +3530,23 @@ static void compact_inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27007, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27007, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27013, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27013, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27008, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27008, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27014, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27014, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3568,7 +3568,7 @@ static void compact_inverted_rc_track_right_twist_down_to_up( /** rct2: 0x008AEA20 */ static void compact_inverted_rc_track_left_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3578,23 +3578,23 @@ static void compact_inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26996, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26996, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27002, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27002, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26995, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26995, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27001, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27001, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -3611,19 +3611,19 @@ static void compact_inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26997, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26997, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27003, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27003, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26994, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26994, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27000, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27000, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3638,19 +3638,19 @@ static void compact_inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26998, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26998, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27004, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27004, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26993, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26993, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26999, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26999, 0, 6, 32, 20, 3, height + 29); break; } @@ -3660,7 +3660,7 @@ static void compact_inverted_rc_track_left_twist_up_to_down( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3678,7 +3678,7 @@ static void compact_inverted_rc_track_left_twist_up_to_down( /** rct2: 0x008AEA30 */ static void compact_inverted_rc_track_right_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3688,23 +3688,23 @@ static void compact_inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27008, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27008, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27014, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27014, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27007, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27007, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27013, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27013, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -3721,19 +3721,19 @@ static void compact_inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27009, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27009, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27015, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27015, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27006, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27006, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27012, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27012, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3748,19 +3748,19 @@ static void compact_inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27010, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27010, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27016, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27016, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27005, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27005, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27011, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27011, 0, 6, 32, 20, 3, height + 29); break; } @@ -3770,7 +3770,7 @@ static void compact_inverted_rc_track_right_twist_up_to_down( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3788,7 +3788,7 @@ static void compact_inverted_rc_track_right_twist_up_to_down( /** rct2: 0x008AEA40 */ static void compact_inverted_rc_track_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3798,22 +3798,22 @@ static void compact_inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27073, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27073, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27081, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27081, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27080, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27080, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27088, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27088, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -3824,19 +3824,19 @@ static void compact_inverted_rc_track_half_loop_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3851,22 +3851,22 @@ static void compact_inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27074, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27074, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27082, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27082, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27079, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27079, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27087, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27087, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; } @@ -3878,22 +3878,22 @@ static void compact_inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27075, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27075, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27083, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27083, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27078, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27078, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27086, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27086, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; } @@ -3909,22 +3909,22 @@ static void compact_inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27076, 0, 0, 32, 20, 3, height + 34, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27076, 0, 0, 32, 20, 3, height + 34, 0, 6, height + 34); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27084, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27084, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27077, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27077, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27085, 0, 16, 32, 20, 3, height + 34, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27085, 0, 16, 32, 20, 3, height + 34, 0, 6, height + 34); break; } @@ -3941,7 +3941,7 @@ static void compact_inverted_rc_track_half_loop_up( /** rct2: 0x008AEA50 */ static void compact_inverted_rc_track_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_half_loop_up(session, ride, 3 - trackSequence, direction, height, trackElement); @@ -3949,7 +3949,7 @@ static void compact_inverted_rc_track_half_loop_down( /** rct2: 0x008AEA60 */ static void compact_inverted_rc_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3959,22 +3959,22 @@ static void compact_inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27049, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27049, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27052, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27052, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27055, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27055, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27058, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27058, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; } @@ -3985,7 +3985,7 @@ static void compact_inverted_rc_track_left_corkscrew_up( SEGMENT_B4 | SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3998,22 +3998,22 @@ static void compact_inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27050, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27050, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27053, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27053, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27056, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27056, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27059, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27059, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; } @@ -4025,27 +4025,27 @@ static void compact_inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27051, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27051, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27054, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27054, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27057, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27057, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27060, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27060, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4067,7 +4067,7 @@ static void compact_inverted_rc_track_left_corkscrew_up( /** rct2: 0x008AEA70 */ static void compact_inverted_rc_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4077,22 +4077,22 @@ static void compact_inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27061, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27061, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27064, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27064, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27067, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27067, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27070, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27070, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; } @@ -4103,7 +4103,7 @@ static void compact_inverted_rc_track_right_corkscrew_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4116,22 +4116,22 @@ static void compact_inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27062, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27062, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27065, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27065, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27068, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27068, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27071, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27071, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; } @@ -4143,27 +4143,27 @@ static void compact_inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27063, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27063, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27066, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27066, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27069, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27069, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27072, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27072, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4185,7 +4185,7 @@ static void compact_inverted_rc_track_right_corkscrew_up( /** rct2: 0x008AEA80 */ static void compact_inverted_rc_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_right_corkscrew_up(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); @@ -4193,7 +4193,7 @@ static void compact_inverted_rc_track_left_corkscrew_down( /** rct2: 0x008AEA90 */ static void compact_inverted_rc_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_left_corkscrew_up(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); @@ -4201,37 +4201,37 @@ static void compact_inverted_rc_track_right_corkscrew_down( /** rct2: 0x008AEAD0 */ static void compact_inverted_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26910, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26910, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26906, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26906, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26911, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26911, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26907, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26907, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26912, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26912, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26908, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26908, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26909, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26909, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26905, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26905, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; } @@ -4242,37 +4242,37 @@ static void compact_inverted_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008AEAB0 */ static void compact_inverted_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26901, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26901, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26897, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26897, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26902, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26902, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26898, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26898, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26903, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26903, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26899, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26899, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26904, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 26904, 0, 0, 28, 28, 3, height + 5, 2, 2, height + 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26900, 0, 0, 28, 28, 1, height + 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 26900, 0, 0, 28, 28, 1, height + 5, 2, 2, height + 104); break; } @@ -4284,7 +4284,7 @@ static void compact_inverted_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008AEAC0 */ static void compact_inverted_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_right_quarter_turn_1_60_deg_up( @@ -4293,7 +4293,7 @@ static void compact_inverted_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008AEAE0 */ static void compact_inverted_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_left_quarter_turn_1_60_deg_up( @@ -4302,7 +4302,7 @@ static void compact_inverted_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008AEAA0 */ static void compact_inverted_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4310,23 +4310,23 @@ static void compact_inverted_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -4335,7 +4335,7 @@ static void compact_inverted_rc_track_brakes( /** rct2: 0x008AEAF0 */ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4345,22 +4345,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27118, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27118, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27123, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27123, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27128, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27128, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27113, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27113, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -4369,7 +4369,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4385,22 +4385,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27117, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27117, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27122, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27122, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27127, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27127, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27112, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27112, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4416,22 +4416,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4447,22 +4447,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27115, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27115, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27120, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27120, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27125, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27125, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27110, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27110, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4478,22 +4478,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27114, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27114, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27119, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27119, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27124, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27124, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27109, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27109, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -4502,7 +4502,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4520,7 +4520,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_up( /** rct2: 0x008AEB00 */ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4530,22 +4530,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27089, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27089, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27094, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27094, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27099, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27099, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27104, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27104, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -4554,7 +4554,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4570,22 +4570,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27090, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27090, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27095, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27095, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27100, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27100, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27105, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27105, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4601,22 +4601,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4632,22 +4632,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27092, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27092, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27097, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27097, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27102, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27102, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27107, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27107, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4663,22 +4663,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27093, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27093, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27098, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27098, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27103, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27103, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27108, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27108, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -4687,7 +4687,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4705,7 +4705,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_up( /** rct2: 0x008AEB10 */ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4715,22 +4715,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27098, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27098, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27103, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27103, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27108, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27108, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27093, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27093, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -4739,7 +4739,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4755,22 +4755,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27097, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27097, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27102, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27102, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27107, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27107, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27092, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27092, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4786,22 +4786,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4817,22 +4817,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27095, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27095, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27100, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27100, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27105, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27105, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27090, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27090, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4848,22 +4848,22 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27094, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27094, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27099, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27099, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27104, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27104, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27089, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27089, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -4872,7 +4872,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4890,7 +4890,7 @@ static void compact_inverted_rc_track_left_quarter_banked_helix_large_down( /** rct2: 0x008AEB20 */ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4900,22 +4900,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27109, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27109, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27114, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27114, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27119, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27119, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27124, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27124, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -4924,7 +4924,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4940,22 +4940,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27110, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27110, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27115, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27115, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27120, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27120, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27125, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27125, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4971,22 +4971,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -5002,22 +5002,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27112, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27112, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27117, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27117, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27122, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27122, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27127, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27127, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -5033,22 +5033,22 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27113, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27113, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27118, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27118, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27123, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27123, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27128, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27128, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -5057,7 +5057,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -5075,7 +5075,7 @@ static void compact_inverted_rc_track_right_quarter_banked_helix_large_down( /** rct2: 0x008AEB30 */ static void compact_inverted_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -5083,41 +5083,41 @@ static void compact_inverted_rc_track_on_ride_photo( case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5129,7 +5129,7 @@ static void compact_inverted_rc_track_on_ride_photo( /** rct2: 0x008AEDB0 */ static void compact_inverted_rc_track_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5141,22 +5141,22 @@ static void compact_inverted_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26609, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26609, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26610, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26610, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26611, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26611, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26612, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26612, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -5167,22 +5167,22 @@ static void compact_inverted_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26605, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26605, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26606, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26606, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26607, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26607, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26608, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26608, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -5199,7 +5199,7 @@ static void compact_inverted_rc_track_90_deg_up( /** rct2: 0x008AEDC0 */ static void compact_inverted_rc_track_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5207,7 +5207,7 @@ static void compact_inverted_rc_track_90_deg_down( /** rct2: 0x008AED70 */ static void compact_inverted_rc_track_60_deg_up_to_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5219,22 +5219,22 @@ static void compact_inverted_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26597, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26597, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26598, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26598, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26599, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26599, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26600, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26600, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -5245,22 +5245,22 @@ static void compact_inverted_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26589, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26589, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26590, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26590, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26591, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26591, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26592, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26592, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -5281,7 +5281,7 @@ static void compact_inverted_rc_track_60_deg_up_to_90_deg_up( /** rct2: 0x008AED80 */ static void compact_inverted_rc_track_90_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { compact_inverted_rc_track_60_deg_up_to_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5289,7 +5289,7 @@ static void compact_inverted_rc_track_90_deg_down_to_60_deg_down( /** rct2: 0x008AED90 */ static void compact_inverted_rc_track_90_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -5298,22 +5298,22 @@ static void compact_inverted_rc_track_90_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26601, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26601, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26602, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26602, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26603, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26603, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26604, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26604, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -5324,22 +5324,22 @@ static void compact_inverted_rc_track_90_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26593, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26593, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26594, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26594, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26595, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26595, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26596, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26596, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -5360,7 +5360,7 @@ static void compact_inverted_rc_track_90_deg_up_to_60_deg_up( /** rct2: 0x008AEDA0 */ static void compact_inverted_rc_track_60_deg_down_to_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5372,22 +5372,22 @@ static void compact_inverted_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26603, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26603, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26604, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26604, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26601, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26601, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26602, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26602, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; } @@ -5398,22 +5398,22 @@ static void compact_inverted_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26595, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26595, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26596, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26596, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26593, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26593, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26594, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26594, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; } @@ -5433,7 +5433,7 @@ static void compact_inverted_rc_track_60_deg_down_to_90_deg_down( /** rct2: 0x008AEB40 */ static void compact_inverted_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5443,22 +5443,22 @@ static void compact_inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26765, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26765, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26769, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26769, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26773, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26773, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26777, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26777, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5466,7 +5466,7 @@ static void compact_inverted_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5479,22 +5479,22 @@ static void compact_inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26766, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26766, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26770, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26770, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26774, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26774, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26778, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26778, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5510,22 +5510,22 @@ static void compact_inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26767, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26767, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26771, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26771, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26775, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26775, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26779, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26779, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5544,22 +5544,22 @@ static void compact_inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26768, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26768, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26772, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26772, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26776, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26776, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26780, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26780, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; } @@ -5573,19 +5573,19 @@ static void compact_inverted_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5596,7 +5596,7 @@ static void compact_inverted_rc_track_left_eighth_to_diag( /** rct2: 0x008AEB50 */ static void compact_inverted_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5606,22 +5606,22 @@ static void compact_inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26749, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26749, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26753, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26753, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26757, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26757, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26761, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26761, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5629,7 +5629,7 @@ static void compact_inverted_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5642,22 +5642,22 @@ static void compact_inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26750, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26750, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26754, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26754, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26758, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26758, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26762, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26762, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5673,22 +5673,22 @@ static void compact_inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26751, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26751, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26755, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26755, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26759, 0, 0, 28, 28, 3, height + 29, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26759, 0, 0, 28, 28, 3, height + 29, 4, 4, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26763, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26763, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5707,22 +5707,22 @@ static void compact_inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26752, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26752, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26756, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26756, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26760, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26760, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26764, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26764, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -5736,19 +5736,19 @@ static void compact_inverted_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5759,7 +5759,7 @@ static void compact_inverted_rc_track_right_eighth_to_diag( /** rct2: 0x008AEB60 */ static void compact_inverted_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5768,7 +5768,7 @@ static void compact_inverted_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008AEB70 */ static void compact_inverted_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5777,7 +5777,7 @@ static void compact_inverted_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008AED30 */ static void compact_inverted_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5787,22 +5787,22 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26853, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26853, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26857, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26857, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26861, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26861, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26865, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26865, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5810,7 +5810,7 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5823,22 +5823,22 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26854, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26854, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26858, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26858, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26862, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26862, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26866, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26866, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5854,22 +5854,22 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26855, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26855, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26859, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26859, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26863, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26863, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26867, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26867, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5888,22 +5888,22 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26856, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26856, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26860, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26860, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26864, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26864, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26868, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26868, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; } @@ -5917,19 +5917,19 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5940,7 +5940,7 @@ static void compact_inverted_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008AED40 */ static void compact_inverted_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5950,22 +5950,22 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26837, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26837, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26841, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26841, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26845, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26845, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26849, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26849, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5973,7 +5973,7 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5986,22 +5986,22 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26838, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26838, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26842, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26842, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26846, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26846, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26850, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26850, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -6017,22 +6017,22 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26839, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26839, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26843, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26843, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26847, 0, 0, 28, 28, 3, height + 29, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26847, 0, 0, 28, 28, 3, height + 29, 4, 4, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26851, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26851, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -6051,22 +6051,22 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26840, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26840, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26844, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26844, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26848, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26848, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26852, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26852, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -6080,19 +6080,19 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6103,7 +6103,7 @@ static void compact_inverted_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008AED50 */ static void compact_inverted_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -6113,7 +6113,7 @@ static void compact_inverted_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008AED60 */ static void compact_inverted_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -6122,7 +6122,7 @@ static void compact_inverted_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008AEB80 */ static void compact_inverted_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6134,7 +6134,7 @@ static void compact_inverted_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26812, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26812, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6145,7 +6145,7 @@ static void compact_inverted_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26784, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26784, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6161,7 +6161,7 @@ static void compact_inverted_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26809, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26809, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6172,7 +6172,7 @@ static void compact_inverted_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26781, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26781, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6188,7 +6188,7 @@ static void compact_inverted_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26811, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26811, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6199,7 +6199,7 @@ static void compact_inverted_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26783, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26783, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6215,7 +6215,7 @@ static void compact_inverted_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26810, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26810, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6226,7 +6226,7 @@ static void compact_inverted_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26782, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26782, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6238,19 +6238,19 @@ static void compact_inverted_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6261,7 +6261,7 @@ static void compact_inverted_rc_track_diag_flat( /** rct2: 0x008AEBB0 */ static void compact_inverted_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6273,7 +6273,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6284,7 +6284,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6300,7 +6300,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6311,7 +6311,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6327,7 +6327,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6338,7 +6338,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6354,7 +6354,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6365,7 +6365,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6377,19 +6377,19 @@ static void compact_inverted_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6400,7 +6400,7 @@ static void compact_inverted_rc_track_diag_25_deg_up( /** rct2: 0x008AEC10 */ static void compact_inverted_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6410,7 +6410,7 @@ static void compact_inverted_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6423,7 +6423,7 @@ static void compact_inverted_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6436,7 +6436,7 @@ static void compact_inverted_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6449,7 +6449,7 @@ static void compact_inverted_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6460,19 +6460,19 @@ static void compact_inverted_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6483,7 +6483,7 @@ static void compact_inverted_rc_track_diag_60_deg_up( /** rct2: 0x008AEB90 */ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6495,7 +6495,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6506,7 +6506,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6522,7 +6522,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6533,7 +6533,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6549,7 +6549,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6560,7 +6560,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6576,7 +6576,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6587,7 +6587,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6599,19 +6599,19 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6622,7 +6622,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008AEBF0 */ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6632,7 +6632,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6645,7 +6645,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6658,7 +6658,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6671,7 +6671,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6682,19 +6682,19 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6705,7 +6705,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008AEC00 */ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6715,7 +6715,7 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6728,7 +6728,7 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6741,7 +6741,7 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6754,7 +6754,7 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -6765,19 +6765,19 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6788,7 +6788,7 @@ static void compact_inverted_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008AEBA0 */ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6800,7 +6800,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6811,7 +6811,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6827,7 +6827,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6838,7 +6838,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6854,7 +6854,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6865,7 +6865,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6881,7 +6881,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6892,7 +6892,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6904,19 +6904,19 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6927,7 +6927,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008AEBE0 */ static void compact_inverted_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6939,7 +6939,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6950,7 +6950,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6966,7 +6966,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6977,7 +6977,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6993,7 +6993,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -7004,7 +7004,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -7020,7 +7020,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -7031,7 +7031,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -7043,19 +7043,19 @@ static void compact_inverted_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7066,7 +7066,7 @@ static void compact_inverted_rc_track_diag_25_deg_down( /** rct2: 0x008AEC40 */ static void compact_inverted_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7076,7 +7076,7 @@ static void compact_inverted_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7089,7 +7089,7 @@ static void compact_inverted_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -7102,7 +7102,7 @@ static void compact_inverted_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -7115,7 +7115,7 @@ static void compact_inverted_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -7126,19 +7126,19 @@ static void compact_inverted_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7149,7 +7149,7 @@ static void compact_inverted_rc_track_diag_60_deg_down( /** rct2: 0x008AEBC0 */ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7161,7 +7161,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7172,7 +7172,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7187,7 +7187,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7198,7 +7198,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7213,7 +7213,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7224,7 +7224,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7239,7 +7239,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7250,7 +7250,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7262,19 +7262,19 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -7285,7 +7285,7 @@ static void compact_inverted_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008AEC20 */ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7295,7 +7295,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -7308,7 +7308,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7321,7 +7321,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7334,7 +7334,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7345,19 +7345,19 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7368,7 +7368,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008AEC30 */ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7378,7 +7378,7 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7391,7 +7391,7 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7404,7 +7404,7 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7417,7 +7417,7 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7428,19 +7428,19 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7451,7 +7451,7 @@ static void compact_inverted_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008AEBD0 */ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7463,7 +7463,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7474,7 +7474,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7490,7 +7490,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7501,7 +7501,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7517,7 +7517,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7528,7 +7528,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7544,7 +7544,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7555,7 +7555,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7567,19 +7567,19 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7590,7 +7590,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008AEC70 */ static void compact_inverted_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7600,7 +7600,7 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7613,7 +7613,7 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7626,7 +7626,7 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7639,7 +7639,7 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7651,19 +7651,19 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7674,7 +7674,7 @@ static void compact_inverted_rc_track_diag_flat_to_left_bank( /** rct2: 0x008AEC80 */ static void compact_inverted_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7684,7 +7684,7 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7697,7 +7697,7 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7710,7 +7710,7 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7723,7 +7723,7 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7735,19 +7735,19 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7758,7 +7758,7 @@ static void compact_inverted_rc_track_diag_flat_to_right_bank( /** rct2: 0x008AEC90 */ static void compact_inverted_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7768,7 +7768,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7781,7 +7781,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7794,7 +7794,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7807,7 +7807,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7819,19 +7819,19 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7842,7 +7842,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_flat( /** rct2: 0x008AECA0 */ static void compact_inverted_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7852,7 +7852,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7865,7 +7865,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7878,7 +7878,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7891,7 +7891,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7903,19 +7903,19 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7926,7 +7926,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_flat( /** rct2: 0x008AECD0 */ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7936,7 +7936,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7949,7 +7949,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7962,7 +7962,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7975,7 +7975,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7986,19 +7986,19 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8009,7 +8009,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008AECE0 */ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8019,7 +8019,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8032,7 +8032,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8045,7 +8045,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8058,7 +8058,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8069,19 +8069,19 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8092,7 +8092,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008AECB0 */ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8102,7 +8102,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8115,7 +8115,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8128,7 +8128,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8141,7 +8141,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8152,19 +8152,19 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8175,7 +8175,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008AECC0 */ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8185,7 +8185,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8198,7 +8198,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8211,7 +8211,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8224,7 +8224,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8235,19 +8235,19 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8258,7 +8258,7 @@ static void compact_inverted_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008AECF0 */ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8268,7 +8268,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8280,7 +8280,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8292,7 +8292,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8304,7 +8304,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8315,19 +8315,19 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -8338,7 +8338,7 @@ static void compact_inverted_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008AED00 */ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8348,7 +8348,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8360,7 +8360,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8372,7 +8372,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8384,7 +8384,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8395,19 +8395,19 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -8418,7 +8418,7 @@ static void compact_inverted_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008AED10 */ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8428,7 +8428,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8441,7 +8441,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8454,7 +8454,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8467,7 +8467,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8478,19 +8478,19 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8501,7 +8501,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008AED20 */ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8511,7 +8511,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8524,7 +8524,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8537,7 +8537,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8550,7 +8550,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8561,19 +8561,19 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8584,7 +8584,7 @@ static void compact_inverted_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008AEC50 */ static void compact_inverted_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8594,7 +8594,7 @@ static void compact_inverted_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8607,7 +8607,7 @@ static void compact_inverted_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8620,7 +8620,7 @@ static void compact_inverted_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8633,7 +8633,7 @@ static void compact_inverted_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8645,19 +8645,19 @@ static void compact_inverted_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8668,7 +8668,7 @@ static void compact_inverted_rc_track_diag_left_bank( /** rct2: 0x008AEC60 */ static void compact_inverted_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8678,7 +8678,7 @@ static void compact_inverted_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8691,7 +8691,7 @@ static void compact_inverted_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8704,7 +8704,7 @@ static void compact_inverted_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8717,7 +8717,7 @@ static void compact_inverted_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8729,19 +8729,19 @@ static void compact_inverted_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8752,7 +8752,7 @@ static void compact_inverted_rc_track_diag_right_bank( /** rct2: 0x008AEAA0 */ static void compact_inverted_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -8760,23 +8760,23 @@ static void compact_inverted_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); diff --git a/src/openrct2/ride/coaster/CorkscrewRollerCoaster.cpp b/src/openrct2/ride/coaster/CorkscrewRollerCoaster.cpp index 1476e8fa47..94a5dc4617 100644 --- a/src/openrct2/ride/coaster/CorkscrewRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/CorkscrewRollerCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _CorkscrewRCBlockBrakeImages[NumOrthogonalDirect /** rct2: 0x008A7AF8 */ static void corkscrew_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -41,24 +41,24 @@ static void corkscrew_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16226, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16226, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16227, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16227, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16228, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16228, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16229, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16229, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -68,17 +68,17 @@ static void corkscrew_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -89,7 +89,7 @@ static void corkscrew_rc_track_flat( /** rct2: 0x008A7D68, 0x008A7D78, 0x008A7D88 */ static void corkscrew_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -103,18 +103,18 @@ static void corkscrew_rc_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _CorkscrewRCBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], 0, 0, + session, direction, _CorkscrewRCBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -123,7 +123,7 @@ static void corkscrew_rc_track_station( /** rct2: 0x008A7B08 */ static void corkscrew_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -132,24 +132,24 @@ static void corkscrew_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16314, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16314, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16315, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16315, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16316, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16317, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16317, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -158,24 +158,24 @@ static void corkscrew_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16286, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16286, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16287, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16287, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16288, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16288, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16289, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16289, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -193,7 +193,7 @@ static void corkscrew_rc_track_25_deg_up( /** rct2: 0x008A7B18 */ static void corkscrew_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -202,24 +202,24 @@ static void corkscrew_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16330, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16330, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16331, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16331, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16332, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16332, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16333, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16333, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -228,24 +228,24 @@ static void corkscrew_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16302, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16302, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16303, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16303, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16304, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16304, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16305, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16305, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -263,7 +263,7 @@ static void corkscrew_rc_track_60_deg_up( /** rct2: 0x008A7B28 */ static void corkscrew_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -272,24 +272,24 @@ static void corkscrew_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16306, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16306, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16307, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16307, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16308, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16309, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16309, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -298,24 +298,24 @@ static void corkscrew_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16278, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16278, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16279, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16279, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16280, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16280, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16281, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16281, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -333,7 +333,7 @@ static void corkscrew_rc_track_flat_to_25_deg_up( /** rct2: 0x008A7B38 */ static void corkscrew_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -342,28 +342,28 @@ static void corkscrew_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16318, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16318, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16319, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16319, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16322, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16322, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16320, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16320, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16323, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16323, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16321, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16321, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -372,28 +372,28 @@ static void corkscrew_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16290, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16290, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16291, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16291, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16294, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16294, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16292, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16292, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16295, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16295, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16293, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16293, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -411,7 +411,7 @@ static void corkscrew_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A7B48 */ static void corkscrew_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -420,28 +420,28 @@ static void corkscrew_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16324, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16324, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16325, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16325, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16328, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16328, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16326, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16326, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16329, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16329, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16327, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16327, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -450,28 +450,28 @@ static void corkscrew_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16296, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16296, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16297, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16297, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16300, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16300, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16298, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16298, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16301, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16301, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16299, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16299, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -489,7 +489,7 @@ static void corkscrew_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A7B58 */ static void corkscrew_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -498,24 +498,24 @@ static void corkscrew_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16310, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16310, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16311, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16312, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16312, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16313, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16313, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -524,24 +524,24 @@ static void corkscrew_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16282, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16282, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16283, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16283, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16284, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16284, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16285, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16285, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -559,7 +559,7 @@ static void corkscrew_rc_track_25_deg_up_to_flat( /** rct2: 0x008A7B68 */ static void corkscrew_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -567,7 +567,7 @@ static void corkscrew_rc_track_25_deg_down( /** rct2: 0x008A7B78 */ static void corkscrew_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -575,7 +575,7 @@ static void corkscrew_rc_track_60_deg_down( /** rct2: 0x008A7B88 */ static void corkscrew_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -583,7 +583,7 @@ static void corkscrew_rc_track_flat_to_25_deg_down( /** rct2: 0x008A7B98 */ static void corkscrew_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -591,7 +591,7 @@ static void corkscrew_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A7BA8 */ static void corkscrew_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -599,7 +599,7 @@ static void corkscrew_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A7BB8 */ static void corkscrew_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -607,7 +607,7 @@ static void corkscrew_rc_track_25_deg_down_to_flat( /** rct2: 0x008A7BC8 */ static void corkscrew_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -617,22 +617,22 @@ static void corkscrew_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16343, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16343, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16348, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16348, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16353, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16353, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16338, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16338, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -649,21 +649,19 @@ static void corkscrew_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16342, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16342, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16347, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16347, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16352, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16352, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16337, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16337, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -678,22 +676,20 @@ static void corkscrew_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16341, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16341, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16346, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16346, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16351, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16351, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16336, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16336, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -708,21 +704,19 @@ static void corkscrew_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16340, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16340, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16345, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16345, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16350, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16350, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16335, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16335, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -737,22 +731,22 @@ static void corkscrew_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16339, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16339, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16344, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16344, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16349, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16349, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16334, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16334, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -771,7 +765,7 @@ static void corkscrew_rc_track_left_quarter_turn_5( /** rct2: 0x008A7BD8 */ static void corkscrew_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -780,35 +774,35 @@ static void corkscrew_rc_track_right_quarter_turn_5( /** rct2: 0x008A7BE8 */ static void corkscrew_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -818,35 +812,35 @@ static void corkscrew_rc_track_flat_to_left_bank( /** rct2: 0x008A7BF8 */ static void corkscrew_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -856,35 +850,35 @@ static void corkscrew_rc_track_flat_to_right_bank( /** rct2: 0x008A7C08 */ static void corkscrew_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -894,35 +888,35 @@ static void corkscrew_rc_track_left_bank_to_flat( /** rct2: 0x008A7C18 */ static void corkscrew_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -932,7 +926,7 @@ static void corkscrew_rc_track_right_bank_to_flat( /** rct2: 0x008A7C28 */ static void corkscrew_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -942,26 +936,24 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16363, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16363, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16374, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16374, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16368, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16368, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16373, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16373, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16358, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16358, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -978,22 +970,20 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16362, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16362, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16367, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16367, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16372, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16372, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16357, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16357, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1008,22 +998,20 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16361, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16361, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16366, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16366, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16371, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16371, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16356, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16356, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1038,22 +1026,20 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16360, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16360, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16365, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16365, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16370, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16370, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16355, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16355, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1068,26 +1054,24 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16359, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16359, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16364, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16364, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16369, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16369, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16375, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16375, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16354, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16354, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1106,7 +1090,7 @@ static void corkscrew_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008A7C38 */ static void corkscrew_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1115,35 +1099,35 @@ static void corkscrew_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008A7C48 */ static void corkscrew_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16250, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16250, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16254, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16254, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16251, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16251, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16255, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16255, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16252, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16252, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16253, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16253, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1160,35 +1144,35 @@ static void corkscrew_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008A7C58 */ static void corkscrew_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16256, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16256, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16257, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16257, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16258, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16258, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16260, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16260, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16259, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16259, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16261, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16261, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1205,35 +1189,35 @@ static void corkscrew_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008A7C68 */ static void corkscrew_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16262, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16262, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16266, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16266, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16263, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16263, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16267, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16267, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16265, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16265, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1250,35 +1234,35 @@ static void corkscrew_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008A7C78 */ static void corkscrew_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16268, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16268, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16269, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16269, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16270, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16270, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16272, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16272, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16271, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16271, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16273, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16273, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1295,7 +1279,7 @@ static void corkscrew_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008A7C88 */ static void corkscrew_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1303,7 +1287,7 @@ static void corkscrew_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008A7C98 */ static void corkscrew_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1311,7 +1295,7 @@ static void corkscrew_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008A7CA8 */ static void corkscrew_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1319,7 +1303,7 @@ static void corkscrew_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008A7CB8 */ static void corkscrew_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1327,31 +1311,31 @@ static void corkscrew_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008A7CC8 */ static void corkscrew_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16274, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16274, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16275, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16275, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16276, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16276, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16277, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16277, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1361,7 +1345,7 @@ static void corkscrew_rc_track_left_bank( /** rct2: 0x008A7CD8 */ static void corkscrew_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1369,7 +1353,7 @@ static void corkscrew_rc_track_right_bank( /** rct2: 0x008A7CE8 */ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1379,22 +1363,22 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16510, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16510, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16515, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16515, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16520, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16520, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16525, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16525, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -1411,21 +1395,19 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16511, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16511, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16516, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16516, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16521, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16521, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16526, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16526, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1440,22 +1422,20 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16512, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16512, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16517, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16517, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16522, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16522, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16527, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16527, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1470,21 +1450,19 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16513, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16513, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16518, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16518, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16523, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16523, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16528, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16528, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1499,22 +1477,22 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16514, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16514, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16519, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16519, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16524, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16524, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16529, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16529, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1533,7 +1511,7 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A7CF8 */ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1543,22 +1521,22 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16490, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16490, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16495, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16495, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16500, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16500, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16505, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16505, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -1575,21 +1553,19 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16491, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16491, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16496, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16496, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16501, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16501, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16506, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16506, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1604,22 +1580,20 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16492, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16492, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16497, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16497, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16502, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16502, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16507, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16507, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1634,21 +1608,19 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16493, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16493, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16498, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16498, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16503, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16503, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16508, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16508, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1663,22 +1635,22 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16494, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16494, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16499, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16499, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16504, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16504, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16509, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16509, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -1697,7 +1669,7 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A7D08 */ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1706,7 +1678,7 @@ static void corkscrew_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A7D18 */ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1715,7 +1687,7 @@ static void corkscrew_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A7D28 */ static void corkscrew_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1725,22 +1697,22 @@ static void corkscrew_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1754,23 +1726,23 @@ static void corkscrew_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -1785,23 +1757,23 @@ static void corkscrew_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1816,22 +1788,22 @@ static void corkscrew_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1850,7 +1822,7 @@ static void corkscrew_rc_track_s_bend_left( /** rct2: 0x008A7D38 */ static void corkscrew_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1860,22 +1832,22 @@ static void corkscrew_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1889,23 +1861,23 @@ static void corkscrew_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -1920,23 +1892,23 @@ static void corkscrew_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1951,22 +1923,22 @@ static void corkscrew_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1985,7 +1957,7 @@ static void corkscrew_rc_track_s_bend_right( /** rct2: 0x008A7D48 */ static void corkscrew_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1995,27 +1967,27 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2034,27 +2006,27 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2069,22 +2041,22 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, height); break; } @@ -2097,19 +2069,19 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2130,19 +2102,19 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2157,22 +2129,22 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, height); break; } @@ -2185,27 +2157,27 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2220,27 +2192,27 @@ static void corkscrew_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2264,7 +2236,7 @@ static void corkscrew_rc_track_left_vertical_loop( /** rct2: 0x008A7D58 */ static void corkscrew_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2274,22 +2246,22 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2301,27 +2273,27 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2331,22 +2303,22 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, height); break; } @@ -2357,19 +2329,19 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2385,19 +2357,19 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2407,22 +2379,22 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, height); break; } @@ -2433,27 +2405,27 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2463,22 +2435,22 @@ static void corkscrew_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2497,7 +2469,7 @@ static void corkscrew_rc_track_right_vertical_loop( /** rct2: 0x008A7D98 */ static void corkscrew_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2507,22 +2479,22 @@ static void corkscrew_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16381, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16381, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16384, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16384, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16387, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16387, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16378, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16378, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2539,21 +2511,19 @@ static void corkscrew_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16380, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16380, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16383, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16383, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16386, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16386, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16377, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16377, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2566,22 +2536,22 @@ static void corkscrew_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16379, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16379, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16382, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16382, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16385, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16385, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16376, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16376, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2600,7 +2570,7 @@ static void corkscrew_rc_track_left_quarter_turn_3( /** rct2: 0x008A7DA8 */ static void corkscrew_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2609,7 +2579,7 @@ static void corkscrew_rc_track_right_quarter_turn_3( /** rct2: 0x008A7DB8 */ static void corkscrew_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2619,26 +2589,24 @@ static void corkscrew_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16393, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16393, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16400, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16400, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16396, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16396, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16399, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16399, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16390, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16390, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2655,22 +2623,20 @@ static void corkscrew_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16392, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16392, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16395, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16395, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16398, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16398, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16389, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16389, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2683,26 +2649,24 @@ static void corkscrew_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16391, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16391, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16394, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16394, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16397, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16397, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16401, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16401, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16388, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16388, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2721,7 +2685,7 @@ static void corkscrew_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008A7DC8 */ static void corkscrew_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2730,7 +2694,7 @@ static void corkscrew_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008A7DD8 */ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2740,22 +2704,22 @@ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16541, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16541, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16543, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16543, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16545, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16545, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16539, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16539, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2775,22 +2739,22 @@ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16540, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16540, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16542, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16542, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16544, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16544, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16538, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16538, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2809,7 +2773,7 @@ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A7DE8 */ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2819,22 +2783,22 @@ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16530, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16530, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16532, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16532, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16534, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16534, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16536, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16536, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2854,27 +2818,27 @@ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16531, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16531, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16533, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16533, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16535, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16535, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16537, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16537, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2895,7 +2859,7 @@ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A7DF8 */ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2904,7 +2868,7 @@ static void corkscrew_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A7E08 */ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2913,7 +2877,7 @@ static void corkscrew_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A7E18 */ static void corkscrew_rc_track_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2923,22 +2887,22 @@ static void corkscrew_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2952,29 +2916,28 @@ static void corkscrew_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2985,20 +2948,20 @@ static void corkscrew_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -3014,19 +2977,19 @@ static void corkscrew_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -3042,7 +3005,7 @@ static void corkscrew_rc_track_half_loop_up( /** rct2: 0x008A7E28 */ static void corkscrew_rc_track_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_half_loop_up(session, ride, 3 - trackSequence, direction, height, trackElement); @@ -3050,7 +3013,7 @@ static void corkscrew_rc_track_half_loop_down( /** rct2: 0x008A7E38 */ static void corkscrew_rc_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3060,22 +3023,22 @@ static void corkscrew_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16610, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16610, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16613, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16613, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16616, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16616, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16619, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16619, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } @@ -3093,22 +3056,22 @@ static void corkscrew_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16611, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16611, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16614, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16614, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16617, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16617, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16620, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16620, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -3120,22 +3083,22 @@ static void corkscrew_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16612, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16612, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16615, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16615, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16618, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16618, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16621, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16621, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -3144,7 +3107,7 @@ static void corkscrew_rc_track_left_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3162,7 +3125,7 @@ static void corkscrew_rc_track_left_corkscrew_up( /** rct2: 0x008A7E48 */ static void corkscrew_rc_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3172,26 +3135,26 @@ static void corkscrew_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16622, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16622, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16625, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16625, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16628, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16628, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16631, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16631, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3206,22 +3169,22 @@ static void corkscrew_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -3233,22 +3196,22 @@ static void corkscrew_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16624, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16624, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16627, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16627, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16630, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16630, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16633, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16633, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -3257,7 +3220,7 @@ static void corkscrew_rc_track_right_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3275,7 +3238,7 @@ static void corkscrew_rc_track_right_corkscrew_up( /** rct2: 0x008A7E58 */ static void corkscrew_rc_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_right_corkscrew_up(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); @@ -3283,7 +3246,7 @@ static void corkscrew_rc_track_left_corkscrew_down( /** rct2: 0x008A7E68 */ static void corkscrew_rc_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_left_corkscrew_up(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); @@ -3291,7 +3254,7 @@ static void corkscrew_rc_track_right_corkscrew_down( /** rct2: 0x008A7E78 */ static void corkscrew_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3301,26 +3264,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16481, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16481, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16488, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16488, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16484, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16484, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16487, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16487, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16478, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16478, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3338,22 +3299,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3366,26 +3325,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16479, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16479, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16482, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16482, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16485, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16485, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16489, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16489, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16476, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16476, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3405,26 +3362,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16478, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16478, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16481, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16481, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16488, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16488, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16484, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16484, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16487, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16487, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3447,23 +3402,21 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3475,26 +3428,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16476, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16476, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16479, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16479, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16482, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16482, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16485, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16485, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16489, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16489, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3509,7 +3460,7 @@ static void corkscrew_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008A7E88 */ static void corkscrew_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3519,26 +3470,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16462, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16462, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16465, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16465, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16468, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16468, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16471, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16471, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16475, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16475, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3556,23 +3505,21 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3584,26 +3531,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16464, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16464, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16467, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16467, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16474, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16474, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16470, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16470, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16473, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16473, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3623,26 +3568,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16465, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16465, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16468, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16468, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16471, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16471, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16475, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16475, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16462, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16462, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3665,22 +3608,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3693,26 +3634,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16467, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16467, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16474, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16474, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16470, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16470, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16473, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16473, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16464, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16464, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3727,7 +3666,7 @@ static void corkscrew_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008A7E98 */ static void corkscrew_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3742,7 +3681,7 @@ static void corkscrew_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008A7EA8 */ static void corkscrew_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3756,7 +3695,7 @@ static void corkscrew_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008A7EB8 */ static void corkscrew_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3766,26 +3705,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16449, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16449, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16460, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16460, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16454, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16454, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16459, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16459, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16444, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16444, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3803,22 +3740,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16448, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16448, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16453, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16453, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16458, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16458, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16443, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16443, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3833,22 +3768,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3863,22 +3796,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16446, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16446, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16451, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16451, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16456, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16456, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16441, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16441, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3893,26 +3824,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16445, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16445, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16450, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16450, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16455, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16455, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16461, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16461, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16440, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16440, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3932,26 +3861,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16444, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16444, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16449, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16449, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16460, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16460, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16454, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16454, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16459, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16459, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3974,22 +3901,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16443, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16443, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16448, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16448, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16453, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16453, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16458, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16458, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4004,22 +3929,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4034,22 +3957,20 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16441, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16441, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16446, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16446, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16451, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16451, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16456, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16456, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4064,26 +3985,24 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16440, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16440, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16445, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16445, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16450, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16450, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16455, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16455, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16461, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16461, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4098,7 +4017,7 @@ static void corkscrew_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008A7EC8 */ static void corkscrew_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4108,26 +4027,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16418, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16418, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16423, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16423, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16428, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16428, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16433, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16433, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16439, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16439, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4145,22 +4062,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16419, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16419, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16424, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16424, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16429, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16429, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16434, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16434, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4175,22 +4090,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4205,22 +4118,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16421, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16421, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16426, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16426, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16431, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16431, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16436, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16436, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4235,26 +4146,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16422, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16422, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16427, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16427, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16438, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16438, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16432, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16432, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16437, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16437, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4274,26 +4183,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16423, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16423, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16428, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16428, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16433, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16433, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16439, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16439, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16418, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16418, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4316,22 +4223,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16424, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16424, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16429, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16429, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16434, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16434, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16419, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16419, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4346,22 +4251,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4376,22 +4279,20 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16426, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16426, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16431, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16431, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16436, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16436, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16421, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16421, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4406,26 +4307,24 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16427, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16427, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16438, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16438, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16432, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16432, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16437, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16437, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16422, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16422, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4440,7 +4339,7 @@ static void corkscrew_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008A7ED8 */ static void corkscrew_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4455,7 +4354,7 @@ static void corkscrew_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008A7EE8 */ static void corkscrew_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4469,34 +4368,34 @@ static void corkscrew_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008A7F18 */ static void corkscrew_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16555, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16555, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16559, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16559, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16556, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16556, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16560, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16560, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16557, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16557, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16561, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16561, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16554, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16554, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16558, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16558, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2); @@ -4506,34 +4405,34 @@ static void corkscrew_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008A7EF8 */ static void corkscrew_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16546, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16546, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16550, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16550, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16547, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16547, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16551, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16551, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16548, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16548, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16552, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16552, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16549, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16549, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16553, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16553, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2); @@ -4543,7 +4442,7 @@ static void corkscrew_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008A7F08 */ static void corkscrew_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -4551,7 +4450,7 @@ static void corkscrew_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008A7F28 */ static void corkscrew_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -4559,7 +4458,7 @@ static void corkscrew_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008A7F38 */ static void corkscrew_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4567,17 +4466,17 @@ static void corkscrew_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16230, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16230, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16231, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16231, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -4587,38 +4486,38 @@ static void corkscrew_rc_track_brakes( /** rct2: 0x008A7F48 */ static void corkscrew_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4629,7 +4528,7 @@ static void corkscrew_rc_track_on_ride_photo( /** rct2: 0x008A8198 */ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4639,25 +4538,25 @@ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16788, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16788, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16792, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16792, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16796, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16796, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16800, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16800, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4672,25 +4571,25 @@ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16789, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16789, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16793, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16793, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16797, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16797, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16801, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16801, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4701,25 +4600,25 @@ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16790, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16790, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16794, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16794, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16798, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16798, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16802, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16802, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4730,27 +4629,25 @@ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16791, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16791, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16795, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16795, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16799, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16799, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16803, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16803, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -4770,7 +4667,7 @@ static void corkscrew_rc_track_flat_to_60_deg_up_long_base( /** rct2: 0x008A81A8 */ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4780,27 +4677,25 @@ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16804, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16804, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16808, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16808, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16812, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16812, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16816, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16816, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4815,25 +4710,25 @@ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16805, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16805, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16809, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16809, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16813, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16813, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16817, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16817, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4844,25 +4739,25 @@ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16806, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16806, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16810, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16810, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16814, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16814, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16818, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16818, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4873,25 +4768,25 @@ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16807, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16807, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16811, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16811, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16815, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16815, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16819, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16819, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -4911,7 +4806,7 @@ static void corkscrew_rc_track_60_deg_up_to_flat_long_base( /** rct2: 0x008A81B8 */ static void corkscrew_rc_track_60_deg_down_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_flat_to_60_deg_up_long_base(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); @@ -4919,7 +4814,7 @@ static void corkscrew_rc_track_60_deg_down_to_flat_long_base( /** rct2: 0x008A81C8 */ static void corkscrew_rc_track_flat_to_60_deg_down_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { corkscrew_rc_track_60_deg_up_to_flat_long_base(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); @@ -4927,7 +4822,7 @@ static void corkscrew_rc_track_flat_to_60_deg_down_long_base( /** rct2: 0x008A7F68 */ static void corkscrew_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4937,22 +4832,22 @@ static void corkscrew_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16740, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16740, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16744, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16744, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16748, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16748, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16752, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16752, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4966,21 +4861,19 @@ static void corkscrew_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16741, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16741, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16745, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16745, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16749, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16749, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16753, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16753, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4995,22 +4888,20 @@ static void corkscrew_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16742, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16742, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16746, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16746, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16750, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16750, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16754, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16754, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5028,30 +4919,28 @@ static void corkscrew_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16743, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16743, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16747, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16747, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16751, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16751, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16755, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16755, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5066,7 +4955,7 @@ static void corkscrew_rc_track_left_eighth_to_diag( /** rct2: 0x008A7F78 */ static void corkscrew_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5076,22 +4965,22 @@ static void corkscrew_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16724, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16724, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16728, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16728, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16732, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16732, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16736, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16736, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5105,21 +4994,19 @@ static void corkscrew_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16725, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16725, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16729, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16729, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16733, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16733, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16737, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16737, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5134,21 +5021,19 @@ static void corkscrew_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16726, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16726, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16730, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16730, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16734, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16734, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16738, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16738, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5166,30 +5051,28 @@ static void corkscrew_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16727, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16727, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16731, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16731, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16735, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16735, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16739, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16739, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5204,7 +5087,7 @@ static void corkscrew_rc_track_right_eighth_to_diag( /** rct2: 0x008A7F88 */ static void corkscrew_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5213,7 +5096,7 @@ static void corkscrew_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A7F98 */ static void corkscrew_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5222,7 +5105,7 @@ static void corkscrew_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A7FA8 */ static void corkscrew_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5232,24 +5115,22 @@ static void corkscrew_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16772, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16772, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16776, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16776, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16780, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16780, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16784, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16784, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5263,22 +5144,20 @@ static void corkscrew_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16773, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16773, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16777, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16777, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16781, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16781, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16785, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16785, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5293,22 +5172,20 @@ static void corkscrew_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16774, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16774, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16778, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16778, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16782, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16782, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16786, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16786, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5326,30 +5203,29 @@ static void corkscrew_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16775, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16775, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16779, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16779, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16783, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16783, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16787, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16787, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5364,7 +5240,7 @@ static void corkscrew_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008A7FB8 */ static void corkscrew_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5374,24 +5250,22 @@ static void corkscrew_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16756, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16756, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16760, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16760, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16764, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16764, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16768, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16768, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5405,21 +5279,20 @@ static void corkscrew_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16757, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16757, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16761, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16761, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16765, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16765, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16769, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16769, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5434,22 +5307,20 @@ static void corkscrew_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16758, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16758, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16762, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16762, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16766, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 16766, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16770, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16770, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5467,30 +5338,29 @@ static void corkscrew_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16759, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16759, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16763, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16763, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16767, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16767, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16771, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16771, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5505,7 +5375,7 @@ static void corkscrew_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008A7FC8 */ static void corkscrew_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5514,7 +5384,7 @@ static void corkscrew_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008A7FD8 */ static void corkscrew_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5523,7 +5393,7 @@ static void corkscrew_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008A7F58 */ static void corkscrew_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5535,7 +5405,7 @@ static void corkscrew_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16699, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16699, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5546,7 +5416,7 @@ static void corkscrew_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16637, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16637, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5562,7 +5432,7 @@ static void corkscrew_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16696, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16696, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5573,7 +5443,7 @@ static void corkscrew_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16634, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16634, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5589,7 +5459,7 @@ static void corkscrew_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16698, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16698, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5600,7 +5470,7 @@ static void corkscrew_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16636, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16636, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5616,22 +5486,22 @@ static void corkscrew_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16697, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16697, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5641,22 +5511,22 @@ static void corkscrew_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16635, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16635, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5669,7 +5539,7 @@ static void corkscrew_rc_track_diag_flat( /** rct2: 0x008A8008 */ static void corkscrew_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5681,7 +5551,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5692,7 +5562,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5708,7 +5578,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5719,7 +5589,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5735,7 +5605,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5746,7 +5616,7 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5762,22 +5632,22 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5787,22 +5657,22 @@ static void corkscrew_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5815,7 +5685,7 @@ static void corkscrew_rc_track_diag_25_deg_up( /** rct2: 0x008A8068 */ static void corkscrew_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5827,7 +5697,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5838,7 +5708,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5854,7 +5724,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5865,7 +5735,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5881,7 +5751,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5892,7 +5762,7 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5908,22 +5778,22 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5933,22 +5803,22 @@ static void corkscrew_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5961,7 +5831,7 @@ static void corkscrew_rc_track_diag_60_deg_up( /** rct2: 0x008A7FE8 */ static void corkscrew_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5973,7 +5843,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5984,7 +5854,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6000,7 +5870,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6011,7 +5881,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6027,7 +5897,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6038,7 +5908,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6054,22 +5924,22 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6079,22 +5949,22 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6107,7 +5977,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A8048 */ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6119,7 +5989,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6130,7 +6000,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6146,7 +6016,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6157,7 +6027,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6173,7 +6043,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6184,7 +6054,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6200,22 +6070,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6225,22 +6095,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6253,7 +6123,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A8058 */ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6265,7 +6135,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6276,7 +6146,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6292,7 +6162,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6303,7 +6173,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6319,7 +6189,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6330,7 +6200,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6346,22 +6216,22 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6371,22 +6241,22 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6399,7 +6269,7 @@ static void corkscrew_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A7FF8 */ static void corkscrew_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6411,7 +6281,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6422,7 +6292,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6438,7 +6308,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6449,7 +6319,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6465,7 +6335,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6476,7 +6346,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6492,22 +6362,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6517,22 +6387,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6545,7 +6415,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A8038 */ static void corkscrew_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6557,7 +6427,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6568,7 +6438,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6584,7 +6454,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6595,7 +6465,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6611,7 +6481,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6622,7 +6492,7 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6638,22 +6508,22 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6663,22 +6533,22 @@ static void corkscrew_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6691,7 +6561,7 @@ static void corkscrew_rc_track_diag_25_deg_down( /** rct2: 0x008A8098 */ static void corkscrew_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6703,7 +6573,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6714,7 +6584,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6730,7 +6600,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6741,7 +6611,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6757,7 +6627,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6768,7 +6638,7 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6784,22 +6654,22 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6809,22 +6679,22 @@ static void corkscrew_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6837,7 +6707,7 @@ static void corkscrew_rc_track_diag_60_deg_down( /** rct2: 0x008A8018 */ static void corkscrew_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6849,7 +6719,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6860,7 +6730,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6875,7 +6745,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6886,7 +6756,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6901,7 +6771,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6912,7 +6782,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6927,22 +6797,22 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6952,22 +6822,22 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6981,7 +6851,7 @@ static void corkscrew_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A8078 */ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6993,7 +6863,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -7004,7 +6874,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -7020,7 +6890,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7031,7 +6901,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7047,7 +6917,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7058,7 +6928,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7074,22 +6944,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7099,22 +6969,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7127,7 +6997,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A8088 */ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7139,7 +7009,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7150,7 +7020,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7166,7 +7036,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7177,7 +7047,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7193,7 +7063,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7204,7 +7074,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7220,22 +7090,22 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7245,22 +7115,22 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7273,7 +7143,7 @@ static void corkscrew_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A8028 */ static void corkscrew_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7285,7 +7155,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7296,7 +7166,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7312,7 +7182,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7323,7 +7193,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7339,7 +7209,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7350,7 +7220,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7366,22 +7236,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7391,22 +7261,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7419,7 +7289,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A80C8 */ static void corkscrew_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7429,7 +7299,7 @@ static void corkscrew_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7442,10 +7312,10 @@ static void corkscrew_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7458,7 +7328,7 @@ static void corkscrew_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7471,22 +7341,22 @@ static void corkscrew_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7498,7 +7368,7 @@ static void corkscrew_rc_track_diag_flat_to_left_bank( /** rct2: 0x008A80D8 */ static void corkscrew_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7508,7 +7378,7 @@ static void corkscrew_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7521,7 +7391,7 @@ static void corkscrew_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7534,10 +7404,10 @@ static void corkscrew_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7550,22 +7420,22 @@ static void corkscrew_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7577,7 +7447,7 @@ static void corkscrew_rc_track_diag_flat_to_right_bank( /** rct2: 0x008A80E8 */ static void corkscrew_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7587,7 +7457,7 @@ static void corkscrew_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7600,10 +7470,10 @@ static void corkscrew_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7616,7 +7486,7 @@ static void corkscrew_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7629,22 +7499,22 @@ static void corkscrew_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7656,7 +7526,7 @@ static void corkscrew_rc_track_diag_left_bank_to_flat( /** rct2: 0x008A80F8 */ static void corkscrew_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7666,7 +7536,7 @@ static void corkscrew_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7679,7 +7549,7 @@ static void corkscrew_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7692,10 +7562,10 @@ static void corkscrew_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7708,22 +7578,22 @@ static void corkscrew_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7735,7 +7605,7 @@ static void corkscrew_rc_track_diag_right_bank_to_flat( /** rct2: 0x008A8128 */ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7745,7 +7615,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7758,10 +7628,10 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7774,7 +7644,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7787,22 +7657,22 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7814,7 +7684,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008A8138 */ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7824,7 +7694,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7837,7 +7707,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7850,10 +7720,10 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7866,22 +7736,22 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7893,7 +7763,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008A8108 */ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7903,7 +7773,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7916,10 +7786,10 @@ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7932,7 +7802,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7945,22 +7815,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7972,7 +7842,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008A8118 */ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7982,7 +7852,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7995,7 +7865,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8008,10 +7878,10 @@ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8024,22 +7894,22 @@ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8051,7 +7921,7 @@ static void corkscrew_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008A8148 */ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8061,7 +7931,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8073,10 +7943,10 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8088,7 +7958,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8100,22 +7970,22 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8128,7 +7998,7 @@ static void corkscrew_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008A8158 */ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8138,7 +8008,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8150,7 +8020,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8162,10 +8032,10 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8177,22 +8047,22 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8205,7 +8075,7 @@ static void corkscrew_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008A8168 */ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8215,7 +8085,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8228,10 +8098,10 @@ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8244,7 +8114,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8257,22 +8127,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8284,7 +8154,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008A8178 */ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8294,7 +8164,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8307,7 +8177,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8320,10 +8190,10 @@ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8336,22 +8206,22 @@ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8363,7 +8233,7 @@ static void corkscrew_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008A80A8 */ static void corkscrew_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8373,7 +8243,7 @@ static void corkscrew_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8386,7 +8256,7 @@ static void corkscrew_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8399,7 +8269,7 @@ static void corkscrew_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8412,22 +8282,22 @@ static void corkscrew_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8439,7 +8309,7 @@ static void corkscrew_rc_track_diag_left_bank( /** rct2: 0x008A80B8 */ static void corkscrew_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8449,7 +8319,7 @@ static void corkscrew_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8462,7 +8332,7 @@ static void corkscrew_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8475,7 +8345,7 @@ static void corkscrew_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8488,22 +8358,22 @@ static void corkscrew_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8515,14 +8385,14 @@ static void corkscrew_rc_track_diag_right_bank( /** rct2: 0x008A8188 */ static void corkscrew_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _CorkscrewRCBlockBrakeImages[direction][isClosed], 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | _CorkscrewRCBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -8530,7 +8400,7 @@ static void corkscrew_rc_track_block_brakes( } static void corkscrew_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!is_csg_loaded()) @@ -8549,25 +8419,25 @@ static void corkscrew_rc_track_booster( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | sprite_ne_sw_behind, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | sprite_ne_sw_behind, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | sprite_ne_sw_after, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | sprite_ne_sw_after, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | sprite_nw_se_behind, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | sprite_nw_se_behind, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | sprite_nw_se_after, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | sprite_nw_se_after, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/FlyingRollerCoaster.cpp b/src/openrct2/ride/coaster/FlyingRollerCoaster.cpp index 99c15ff19c..b374d03542 100644 --- a/src/openrct2/ride/coaster/FlyingRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/FlyingRollerCoaster.cpp @@ -21,7 +21,7 @@ /** rct2: 0x007C6FF4 */ static void flying_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -32,25 +32,25 @@ static void flying_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17486, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17486, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17487, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17487, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17488, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17488, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17489, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17489, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -60,18 +60,18 @@ static void flying_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -88,13 +88,13 @@ static void flying_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27131, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27131, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27132, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27132, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -106,13 +106,13 @@ static void flying_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -120,10 +120,10 @@ static void flying_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -133,7 +133,7 @@ static void flying_rc_track_flat( /** rct2: 0x007C7244, 0x007C7254, 0x007C7264 */ static void flying_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.IsInverted()) @@ -145,15 +145,15 @@ static void flying_rc_track_station( { SPR_STATION_BASE_C_NW_SE, 27132, SPR_STATION_INVERTED_BAR_C_NW_SE }, }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, - 6, height + 24); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, + height + 24); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, - 0, 6, height + 24); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, + 6, height + 24); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1); } else @@ -168,18 +168,18 @@ static void flying_rc_track_station( if (trackElement.GetTrackType() == TrackElemType::EndStation) { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); } @@ -190,7 +190,7 @@ static void flying_rc_track_station( /** rct2: 0x007C7004 */ static void flying_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -201,19 +201,19 @@ static void flying_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17498, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17498, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17499, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17499, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17500, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17500, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17501, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17501, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } @@ -223,26 +223,26 @@ static void flying_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17204, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17204, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17205, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17205, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17206, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17206, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17207, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17207, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -264,22 +264,22 @@ static void flying_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27249, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27249, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27250, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27250, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27251, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27251, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27252, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27252, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -290,22 +290,22 @@ static void flying_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27221, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27221, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27222, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27222, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27223, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27223, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27224, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27224, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -313,25 +313,25 @@ static void flying_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -350,7 +350,7 @@ static void flying_rc_track_25_deg_up( /** rct2: 0x007C7014 */ static void flying_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -359,25 +359,25 @@ static void flying_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17220, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17220, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17221, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17221, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17222, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17222, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17223, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17223, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -397,22 +397,22 @@ static void flying_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27237, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27237, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27238, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27238, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27239, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27239, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27240, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27240, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; } @@ -432,7 +432,7 @@ static void flying_rc_track_60_deg_up( /** rct2: 0x007C7024 */ static void flying_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -443,19 +443,19 @@ static void flying_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17490, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17490, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17491, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17491, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17492, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17492, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17493, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17493, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } @@ -465,26 +465,26 @@ static void flying_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17196, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17196, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17197, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17197, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17198, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17198, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17199, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17199, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -506,22 +506,22 @@ static void flying_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27241, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27241, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27242, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27242, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27243, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27243, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27244, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27244, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -532,22 +532,22 @@ static void flying_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27213, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27213, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27214, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27214, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27215, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27215, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27216, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27216, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -555,25 +555,25 @@ static void flying_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -592,7 +592,7 @@ static void flying_rc_track_flat_to_25_deg_up( /** rct2: 0x007C7034 */ static void flying_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -601,29 +601,29 @@ static void flying_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17208, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17208, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17209, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17209, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17212, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17212, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17210, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17210, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17213, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17213, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17211, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17211, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -643,28 +643,28 @@ static void flying_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27225, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27225, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27229, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27229, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27226, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27226, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27230, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27230, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27227, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27227, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27228, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27228, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -684,7 +684,7 @@ static void flying_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x007C7044 */ static void flying_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -693,29 +693,29 @@ static void flying_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17214, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17214, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17215, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17215, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17218, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17218, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17216, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17216, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17219, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17219, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17217, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17217, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -735,53 +735,53 @@ static void flying_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27231, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27231, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27235, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27235, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27232, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27232, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27236, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27236, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27233, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27233, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27234, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27234, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 71, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 71, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 71, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 71, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 71, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 71, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 71, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 71, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -800,7 +800,7 @@ static void flying_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x007C7054 */ static void flying_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -811,19 +811,19 @@ static void flying_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17494, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17494, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17495, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17495, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17496, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17496, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17497, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17497, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } @@ -833,26 +833,26 @@ static void flying_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17200, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17200, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17201, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17201, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17202, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17202, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17203, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17203, 0, 0, 32, 20, 3, height, 0, 6, height); break; } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -874,22 +874,22 @@ static void flying_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27245, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27245, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27246, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27246, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27247, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27247, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27248, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27248, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -900,22 +900,22 @@ static void flying_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27217, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27217, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27218, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27218, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27219, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27219, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27220, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27220, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -923,25 +923,25 @@ static void flying_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -960,7 +960,7 @@ static void flying_rc_track_25_deg_up_to_flat( /** rct2: 0x007C7064 */ static void flying_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -968,7 +968,7 @@ static void flying_rc_track_25_deg_down( /** rct2: 0x007C7074 */ static void flying_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -976,7 +976,7 @@ static void flying_rc_track_60_deg_down( /** rct2: 0x007C7084 */ static void flying_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -984,7 +984,7 @@ static void flying_rc_track_flat_to_25_deg_down( /** rct2: 0x007C7094 */ static void flying_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -992,7 +992,7 @@ static void flying_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x007C70A4 */ static void flying_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1000,7 +1000,7 @@ static void flying_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x007C70B4 */ static void flying_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1008,7 +1008,7 @@ static void flying_rc_track_25_deg_down_to_flat( /** rct2: 0x007C70C4 */ static void flying_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1020,27 +1020,27 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17259, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17259, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17264, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17269, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17269, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17254, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17254, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1058,22 +1058,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17258, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17258, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17263, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17263, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17268, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17268, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17253, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17253, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1089,22 +1089,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17257, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17257, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17262, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17262, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17267, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17267, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17252, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17252, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1121,22 +1121,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17256, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17256, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17261, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17261, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17266, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17266, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17251, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17251, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1152,27 +1152,27 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17255, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17255, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17260, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17260, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17265, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17265, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17250, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17250, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1198,22 +1198,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27142, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27142, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27147, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27147, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27152, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27152, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27137, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27137, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1223,7 +1223,7 @@ static void flying_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1239,23 +1239,23 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27141, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27141, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27146, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27146, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27151, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27151, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27136, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27136, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -1270,22 +1270,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27140, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27140, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27145, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27145, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27150, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27150, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27135, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27135, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -1302,23 +1302,23 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27139, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27139, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27144, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27144, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27149, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27149, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27134, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27134, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; } paint_util_set_segment_support_height( @@ -1333,22 +1333,22 @@ static void flying_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27138, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27138, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27143, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27143, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27148, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27148, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27133, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27133, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -1358,7 +1358,7 @@ static void flying_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1377,7 +1377,7 @@ static void flying_rc_track_left_quarter_turn_5( /** rct2: 0x007C70D4 */ static void flying_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1386,7 +1386,7 @@ static void flying_rc_track_right_quarter_turn_5( /** rct2: 0x007C70E4 */ static void flying_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1395,29 +1395,29 @@ static void flying_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1430,22 +1430,22 @@ static void flying_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1454,10 +1454,10 @@ static void flying_rc_track_flat_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1467,7 +1467,7 @@ static void flying_rc_track_flat_to_left_bank( /** rct2: 0x007C70F4 */ static void flying_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1476,29 +1476,29 @@ static void flying_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1511,22 +1511,22 @@ static void flying_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1535,10 +1535,10 @@ static void flying_rc_track_flat_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1548,7 +1548,7 @@ static void flying_rc_track_flat_to_right_bank( /** rct2: 0x007C7104 */ static void flying_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1557,29 +1557,29 @@ static void flying_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17162, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17163, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17167, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17160, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17161, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1592,22 +1592,22 @@ static void flying_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1616,10 +1616,10 @@ static void flying_rc_track_left_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1629,7 +1629,7 @@ static void flying_rc_track_left_bank_to_flat( /** rct2: 0x007C7114 */ static void flying_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1638,29 +1638,29 @@ static void flying_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17158, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17159, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17156, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17164, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17157, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17165, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1673,22 +1673,22 @@ static void flying_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1697,10 +1697,10 @@ static void flying_rc_track_right_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1710,7 +1710,7 @@ static void flying_rc_track_right_bank_to_flat( /** rct2: 0x007C7124 */ static void flying_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1722,30 +1722,30 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17279, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17279, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17290, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17290, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17284, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17284, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17289, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17289, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17274, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17274, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1763,22 +1763,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17278, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17278, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17283, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17283, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17288, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17288, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17273, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17273, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1794,22 +1794,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17277, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17277, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17282, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17282, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17287, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17287, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17272, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17272, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1826,22 +1826,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17276, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17276, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17281, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17281, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17286, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17286, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17271, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17271, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1857,30 +1857,30 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17275, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17275, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17280, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17280, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17285, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17285, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17291, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17291, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17270, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17270, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1906,22 +1906,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27162, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27162, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27167, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27167, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27172, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27172, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27157, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27157, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -1931,7 +1931,7 @@ static void flying_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1947,21 +1947,21 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27161, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27161, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27166, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27166, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27171, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27171, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27156, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27156, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; } paint_util_set_segment_support_height( @@ -1976,22 +1976,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27160, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27160, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27165, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27165, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27170, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27170, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27155, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27155, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -2007,21 +2007,21 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27159, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27159, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27164, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27164, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27169, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27169, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27154, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27154, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; } paint_util_set_segment_support_height( @@ -2036,22 +2036,22 @@ static void flying_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27158, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27158, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27163, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27163, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27168, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27168, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27153, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27153, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; } @@ -2061,7 +2061,7 @@ static void flying_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2080,7 +2080,7 @@ static void flying_rc_track_banked_left_quarter_turn_5( /** rct2: 0x007C7134 */ static void flying_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -2089,7 +2089,7 @@ static void flying_rc_track_banked_right_quarter_turn_5( /** rct2: 0x007C7144 */ static void flying_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2098,29 +2098,29 @@ static void flying_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17168, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17168, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17172, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17172, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17169, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17169, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17173, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17173, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17170, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17170, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17171, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17171, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2140,22 +2140,22 @@ static void flying_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27277, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27277, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27278, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27278, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27279, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27279, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27280, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27280, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2164,25 +2164,25 @@ static void flying_rc_track_left_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2201,7 +2201,7 @@ static void flying_rc_track_left_bank_to_25_deg_up( /** rct2: 0x007C7154 */ static void flying_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2210,29 +2210,29 @@ static void flying_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17174, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17174, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17175, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17175, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17176, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17176, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17178, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17178, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17177, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17177, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17179, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17179, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2252,22 +2252,22 @@ static void flying_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27281, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27281, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27282, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27282, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27283, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27283, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27284, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27284, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2276,25 +2276,25 @@ static void flying_rc_track_right_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2313,7 +2313,7 @@ static void flying_rc_track_right_bank_to_25_deg_up( /** rct2: 0x007C7164 */ static void flying_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2322,29 +2322,29 @@ static void flying_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17180, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17180, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17184, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17184, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17181, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17181, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17185, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17185, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17182, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17182, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17183, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17183, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2364,22 +2364,22 @@ static void flying_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27285, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27285, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27286, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27286, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27287, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27287, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27288, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27288, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2388,25 +2388,25 @@ static void flying_rc_track_25_deg_up_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2425,7 +2425,7 @@ static void flying_rc_track_25_deg_up_to_left_bank( /** rct2: 0x007C7174 */ static void flying_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2434,29 +2434,29 @@ static void flying_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17186, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17186, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17187, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17187, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17188, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17188, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17190, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17190, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17189, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17189, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17191, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17191, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2476,22 +2476,22 @@ static void flying_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27289, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27289, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27290, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27290, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27291, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27291, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27292, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27292, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2500,25 +2500,25 @@ static void flying_rc_track_25_deg_up_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2537,7 +2537,7 @@ static void flying_rc_track_25_deg_up_to_right_bank( /** rct2: 0x007C7184 */ static void flying_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2545,7 +2545,7 @@ static void flying_rc_track_left_bank_to_25_deg_down( /** rct2: 0x007C7194 */ static void flying_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2553,7 +2553,7 @@ static void flying_rc_track_right_bank_to_25_deg_down( /** rct2: 0x007C71A4 */ static void flying_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2561,7 +2561,7 @@ static void flying_rc_track_25_deg_down_to_left_bank( /** rct2: 0x007C71B4 */ static void flying_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2569,7 +2569,7 @@ static void flying_rc_track_25_deg_down_to_right_bank( /** rct2: 0x007C71C4 */ static void flying_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2578,25 +2578,25 @@ static void flying_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17192, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17192, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17193, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17193, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17194, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17194, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17195, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17195, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -2609,22 +2609,22 @@ static void flying_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27293, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27293, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27294, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27294, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27295, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27295, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27296, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27296, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -2633,10 +2633,10 @@ static void flying_rc_track_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2646,7 +2646,7 @@ static void flying_rc_track_left_bank( /** rct2: 0x007C71D4 */ static void flying_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2654,7 +2654,7 @@ static void flying_rc_track_right_bank( /** rct2: 0x007C71E4 */ static void flying_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2666,27 +2666,27 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17344, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17344, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17349, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17349, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17354, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17354, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17359, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17359, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2704,20 +2704,20 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17345, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17345, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17350, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17350, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17355, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17355, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17360, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17360, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -2733,22 +2733,22 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17346, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17346, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17351, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17351, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17356, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17356, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17361, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17361, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -2764,20 +2764,20 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17347, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17347, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17352, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17352, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17357, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17357, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17362, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17362, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -2793,27 +2793,27 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17348, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17348, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17353, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17353, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17358, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17358, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17363, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17363, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2839,19 +2839,19 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27317, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27317, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27322, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27322, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27327, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27327, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27332, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27332, 0, 6, 32, 20, 3, height + 24); break; } @@ -2860,7 +2860,7 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2876,19 +2876,19 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27318, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27318, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27323, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27323, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27328, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27328, 0, 16, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27333, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27333, 0, 16, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -2903,19 +2903,19 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27319, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27319, 0, 16, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27324, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27324, 16, 16, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27329, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27329, 16, 0, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27334, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27334, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -2931,19 +2931,19 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27320, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27320, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27325, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27325, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27330, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27330, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27335, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27335, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -2958,19 +2958,19 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27321, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27321, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27326, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27326, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27331, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27331, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27336, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27336, 6, 0, 20, 32, 3, height + 24); break; } @@ -2979,7 +2979,7 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2998,7 +2998,7 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x007C71F4 */ static void flying_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3010,27 +3010,27 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17324, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17324, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17329, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17329, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17334, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17334, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17339, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17339, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -3048,21 +3048,21 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17325, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17325, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17330, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17330, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17335, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17335, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17340, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17340, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -3077,21 +3077,21 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17326, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17326, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17331, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17331, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17336, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17336, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17341, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17341, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -3108,20 +3108,20 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17327, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17327, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17332, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17332, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17337, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17337, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17342, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17342, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -3137,27 +3137,27 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17328, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17328, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17333, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17333, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17338, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17338, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17343, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17343, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3183,19 +3183,19 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27297, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27297, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27302, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27302, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27307, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27307, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27312, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27312, 0, 6, 32, 20, 3, height + 24); break; } @@ -3204,7 +3204,7 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3220,19 +3220,19 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27298, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27298, 0, 16, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27303, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27303, 0, 16, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27308, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27308, 0, 0, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27313, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27313, 0, 0, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3247,19 +3247,19 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27299, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27299, 0, 0, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27304, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27304, 16, 0, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27309, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27309, 16, 16, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27314, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27314, 0, 16, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3275,19 +3275,19 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27300, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27300, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27305, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27305, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27310, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27310, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27315, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27315, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3302,19 +3302,19 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27301, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27301, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27306, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27306, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27311, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27311, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27316, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27316, 6, 0, 20, 32, 3, height + 24); break; } @@ -3323,7 +3323,7 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3342,7 +3342,7 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x007C7204 */ static void flying_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -3351,7 +3351,7 @@ static void flying_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x007C7214 */ static void flying_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -3360,7 +3360,7 @@ static void flying_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x007C7224 */ static void flying_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3372,27 +3372,27 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3407,24 +3407,24 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); break; } @@ -3440,25 +3440,25 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17310, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17314, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17309, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17313, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3473,27 +3473,27 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17315, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17312, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3519,22 +3519,22 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3543,7 +3543,7 @@ static void flying_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3556,22 +3556,22 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -3585,11 +3585,11 @@ static void flying_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3600,22 +3600,22 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -3629,11 +3629,11 @@ static void flying_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3644,22 +3644,22 @@ static void flying_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3668,7 +3668,7 @@ static void flying_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3687,7 +3687,7 @@ static void flying_rc_track_s_bend_left( /** rct2: 0x007C7234 */ static void flying_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3699,27 +3699,27 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3734,25 +3734,25 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -3767,25 +3767,25 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17318, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17322, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17317, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17321, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3800,27 +3800,27 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17319, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17323, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17320, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3846,22 +3846,22 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3870,7 +3870,7 @@ static void flying_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3883,22 +3883,22 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -3912,11 +3912,11 @@ static void flying_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3927,22 +3927,22 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -3956,11 +3956,11 @@ static void flying_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3971,22 +3971,22 @@ static void flying_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3995,7 +3995,7 @@ static void flying_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4014,7 +4014,7 @@ static void flying_rc_track_s_bend_right( /** rct2: 0x007C7274 */ static void flying_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4026,27 +4026,27 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17229, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17229, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17232, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17232, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17235, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17235, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17226, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17226, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4064,22 +4064,22 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17228, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17228, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17231, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17231, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17234, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17234, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17225, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17225, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4093,27 +4093,27 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17227, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17227, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17230, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17230, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17233, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17233, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17224, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17224, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4139,22 +4139,22 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27392, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27392, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27395, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27395, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27398, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27398, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27389, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27389, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -4164,7 +4164,7 @@ static void flying_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4180,22 +4180,22 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27391, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27391, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27394, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27394, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27397, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27397, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27388, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27388, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -4209,22 +4209,22 @@ static void flying_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27390, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27390, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27393, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27393, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27396, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27396, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27387, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27387, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -4234,7 +4234,7 @@ static void flying_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4253,7 +4253,7 @@ static void flying_rc_track_left_quarter_turn_3( /** rct2: 0x007C7284 */ static void flying_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4262,7 +4262,7 @@ static void flying_rc_track_right_quarter_turn_3( /** rct2: 0x007C7294 */ static void flying_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4274,30 +4274,30 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17241, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17241, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17248, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17244, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17244, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17247, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17247, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17238, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17238, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4315,22 +4315,22 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17240, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17240, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17243, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17243, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17246, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17246, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17237, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17237, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4344,30 +4344,30 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17239, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17239, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17242, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17242, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17245, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17245, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17249, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17249, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17236, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17236, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4393,22 +4393,22 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27404, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27404, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27407, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27407, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27410, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27410, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27401, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27401, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -4418,7 +4418,7 @@ static void flying_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4434,22 +4434,22 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27403, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27403, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27406, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27406, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27409, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27409, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27400, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27400, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -4463,22 +4463,22 @@ static void flying_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27402, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27402, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27405, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27405, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27408, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27408, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27399, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27399, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -4488,7 +4488,7 @@ static void flying_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4507,7 +4507,7 @@ static void flying_rc_track_left_quarter_turn_3_bank( /** rct2: 0x007C72A4 */ static void flying_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4516,7 +4516,7 @@ static void flying_rc_track_right_quarter_turn_3_bank( /** rct2: 0x007C72B4 */ static void flying_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4528,23 +4528,23 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17375, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17377, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17377, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17379, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17373, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17373, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -4565,23 +4565,23 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17374, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17374, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17376, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17376, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17378, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17378, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17372, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17372, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4607,19 +4607,19 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27422, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27422, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27424, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27424, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27426, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27426, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27420, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27420, 0, 6, 32, 20, 3, height + 24); break; } @@ -4628,7 +4628,7 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4647,19 +4647,19 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27421, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27421, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27423, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27423, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27425, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27425, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27419, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27419, 6, 0, 20, 32, 3, height + 24); break; } @@ -4668,7 +4668,7 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4687,7 +4687,7 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x007C72C4 */ static void flying_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4699,23 +4699,23 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17364, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17364, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17366, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17366, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17368, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17370, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17370, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -4736,27 +4736,27 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17365, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17365, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17367, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17367, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17369, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17369, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17371, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17371, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4784,19 +4784,19 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27411, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27411, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27413, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27413, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27415, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27415, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27417, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27417, 0, 6, 32, 20, 3, height + 24); break; } @@ -4805,7 +4805,7 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4824,19 +4824,19 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27412, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27412, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27414, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27414, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27416, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27416, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27418, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27418, 6, 0, 20, 32, 3, height + 24); break; } @@ -4845,7 +4845,7 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4864,7 +4864,7 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x007C72D4 */ static void flying_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4873,7 +4873,7 @@ static void flying_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x007C72E4 */ static void flying_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4882,7 +4882,7 @@ static void flying_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x007C7314 */ static void flying_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4892,27 +4892,25 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17399, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17399, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17406, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17406, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17402, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17402, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17405, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17396, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17396, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4930,22 +4928,20 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4958,27 +4954,25 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17397, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17397, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17400, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17400, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17403, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17403, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17407, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17407, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17394, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17394, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4998,27 +4992,25 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17396, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17396, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17399, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17399, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17406, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17406, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17402, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17402, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17405, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17405, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5041,23 +5033,21 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17395, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17398, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17401, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17404, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5069,27 +5059,25 @@ static void flying_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17394, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17394, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17397, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17397, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17400, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17400, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17403, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17403, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17407, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17407, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -5104,7 +5092,7 @@ static void flying_rc_track_left_half_banked_helix_up_small( /** rct2: 0x007C7324 */ static void flying_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5114,27 +5102,25 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17380, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17380, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17383, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17383, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17386, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17386, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17389, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17389, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17393, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17393, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5152,23 +5138,21 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5180,27 +5164,25 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17382, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17382, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17385, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17385, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17392, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17392, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17388, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17388, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17391, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17391, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5220,27 +5202,25 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17383, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17383, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17386, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17386, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17389, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17389, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17393, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17393, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17380, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17380, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5263,22 +5243,20 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17384, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17387, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17390, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17381, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -5291,27 +5269,25 @@ static void flying_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17385, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17385, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17392, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17392, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17388, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17388, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17391, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17391, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17382, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17382, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -5326,7 +5302,7 @@ static void flying_rc_track_right_half_banked_helix_up_small( /** rct2: 0x007C7334 */ static void flying_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5340,7 +5316,7 @@ static void flying_rc_track_left_half_banked_helix_down_small( /** rct2: 0x007C7344 */ static void flying_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5354,7 +5330,7 @@ static void flying_rc_track_right_half_banked_helix_down_small( /** rct2: 0x007C7354 */ static void flying_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5364,27 +5340,25 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17439, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17439, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17450, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17450, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17444, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17444, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17449, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17449, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17434, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17434, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5402,22 +5376,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17438, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17438, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17443, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17443, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17448, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17448, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17433, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17433, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5432,22 +5404,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5462,22 +5432,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17436, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17436, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17441, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17441, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17446, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17446, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17431, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17431, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5492,27 +5460,25 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17435, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17435, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17440, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17440, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17445, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17445, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17451, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17451, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17430, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17430, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5532,27 +5498,25 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17434, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17434, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17439, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17439, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17450, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17450, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17444, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17444, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17449, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17449, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5575,22 +5539,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17433, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17433, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17438, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17438, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17443, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17443, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17448, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17448, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5605,22 +5567,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17432, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17437, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17442, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17447, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5635,22 +5595,20 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17431, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17431, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17436, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17436, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17441, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17441, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17446, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17446, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5665,27 +5623,25 @@ static void flying_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17430, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17430, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17435, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17435, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17440, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17440, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17445, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17445, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17451, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17451, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -5700,7 +5656,7 @@ static void flying_rc_track_left_half_banked_helix_up_large( /** rct2: 0x007C7364 */ static void flying_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5710,27 +5666,25 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17408, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17408, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17413, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17418, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17418, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17423, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17423, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17429, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17429, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5748,22 +5702,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17409, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17409, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17414, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17414, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17419, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17419, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17424, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17424, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5778,22 +5730,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5808,22 +5758,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17411, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17411, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17416, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17416, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17421, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17421, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17426, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17426, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5838,27 +5786,25 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17412, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17412, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17417, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17417, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17428, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17428, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17422, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17422, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17427, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17427, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5878,27 +5824,25 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17413, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17413, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17418, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17418, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17423, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17423, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17429, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17429, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17408, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17408, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5921,22 +5865,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17414, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17414, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17419, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17419, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17424, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17424, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17409, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17409, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5951,22 +5893,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17415, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17420, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17425, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17410, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5981,22 +5921,20 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17416, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17416, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17421, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17421, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17426, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17426, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17411, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17411, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -6011,27 +5949,25 @@ static void flying_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17417, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17417, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17428, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17428, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17422, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17422, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17427, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17427, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17412, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17412, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -6046,7 +5982,7 @@ static void flying_rc_track_right_half_banked_helix_up_large( /** rct2: 0x007C7374 */ static void flying_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6060,7 +5996,7 @@ static void flying_rc_track_left_half_banked_helix_down_large( /** rct2: 0x007C7384 */ static void flying_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6074,7 +6010,7 @@ static void flying_rc_track_right_half_banked_helix_down_large( /** rct2: 0x007C73B4 */ static void flying_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6083,31 +6019,27 @@ static void flying_rc_track_left_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17301, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17301, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17305, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17305, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17302, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17302, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17306, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17306, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17303, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17303, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17307, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17307, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17300, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17300, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17304, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17304, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6117,34 +6049,34 @@ static void flying_rc_track_left_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27352, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27352, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27348, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27348, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27353, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27353, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27349, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27349, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27354, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27354, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27350, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27350, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27351, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27351, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27347, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27347, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; } @@ -6157,7 +6089,7 @@ static void flying_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x007C7394 */ static void flying_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6166,31 +6098,27 @@ static void flying_rc_track_right_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17292, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17292, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17296, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17296, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17293, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17293, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17297, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17297, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17294, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17294, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17298, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17298, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17295, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17295, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17299, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 17299, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6200,34 +6128,34 @@ static void flying_rc_track_right_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27343, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27343, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27339, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27339, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27344, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27344, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27340, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27340, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27345, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27345, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27341, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27341, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27346, 0, 0, 28, 28, 3, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27346, 0, 0, 28, 28, 3, height - 5, 2, 2, height - 5); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27342, 0, 0, 28, 28, 1, height - 5, 2, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 27342, 0, 0, 28, 28, 1, height - 5, 2, 2, height + 94); break; } @@ -6239,7 +6167,7 @@ static void flying_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x007C73A4 */ static void flying_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -6247,7 +6175,7 @@ static void flying_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x007C73C4 */ static void flying_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -6255,7 +6183,7 @@ static void flying_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x007C73D4 */ static void flying_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6265,18 +6193,18 @@ static void flying_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17148, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17148, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17149, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17149, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -6290,23 +6218,23 @@ static void flying_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6315,7 +6243,7 @@ static void flying_rc_track_brakes( } static void flying_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6332,7 +6260,7 @@ static void flying_rc_track_booster( /** rct2: 0x007C7674 */ static void flying_rc_track_left_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6342,22 +6270,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27202, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27202, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27207, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27207, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27212, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27212, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27197, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27197, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; } @@ -6366,7 +6294,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6382,22 +6310,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27201, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27201, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27206, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27206, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27211, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27211, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27196, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27196, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -6413,22 +6341,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -6444,22 +6372,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27199, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27199, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27204, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27204, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27209, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27209, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27194, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27194, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -6475,22 +6403,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27198, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27198, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27203, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27203, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27208, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27208, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27193, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27193, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; } @@ -6499,7 +6427,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -6517,7 +6445,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_up( /** rct2: 0x007C7684 */ static void flying_rc_track_right_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6527,22 +6455,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27173, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27173, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27178, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27178, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27183, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27183, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27188, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27188, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; } @@ -6551,7 +6479,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6567,22 +6495,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27174, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27174, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27179, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27179, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27184, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27184, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27189, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27189, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -6598,22 +6526,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -6629,22 +6557,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27176, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27176, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27181, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27181, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27186, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27186, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27191, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27191, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -6660,22 +6588,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27177, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27177, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27182, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27182, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27187, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27187, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27192, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27192, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; } @@ -6684,7 +6612,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -6702,7 +6630,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_up( /** rct2: 0x007C7694 */ static void flying_rc_track_left_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6712,22 +6640,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27182, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27182, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27187, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27187, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27192, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27192, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27177, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27177, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; } @@ -6736,7 +6664,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6752,22 +6680,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27181, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27181, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27186, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27186, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27191, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27191, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27176, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27176, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -6783,22 +6711,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -6814,22 +6742,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27179, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27179, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27184, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27184, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27189, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27189, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27174, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27174, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -6845,22 +6773,22 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27178, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27178, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27183, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27183, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27188, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27188, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27173, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27173, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; } @@ -6869,7 +6797,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -6887,7 +6815,7 @@ static void flying_rc_track_left_quarter_banked_helix_large_down( /** rct2: 0x007C76A4 */ static void flying_rc_track_right_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6897,22 +6825,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27193, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27193, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27198, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27198, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27203, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27203, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27208, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27208, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; } @@ -6921,7 +6849,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 53, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6937,22 +6865,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27194, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27194, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27199, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27199, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27204, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27204, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27209, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27209, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -6968,22 +6896,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -6999,22 +6927,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27196, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27196, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27201, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27201, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27206, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27206, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27211, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27211, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -7030,22 +6958,22 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27197, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27197, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27202, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27202, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27207, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27207, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27212, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27212, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; } @@ -7054,7 +6982,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -7072,7 +7000,7 @@ static void flying_rc_track_right_quarter_banked_helix_large_down( /** rct2: 0x007C78B4 */ static void flying_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7081,25 +7009,25 @@ static void flying_rc_track_25_deg_up_left_banked( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17914, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17914, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17915, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17915, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17916, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17916, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17917, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17917, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7119,47 +7047,47 @@ static void flying_rc_track_25_deg_up_left_banked( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27711, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27711, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27712, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27712, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27713, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27713, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27714, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27714, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7178,7 +7106,7 @@ static void flying_rc_track_25_deg_up_left_banked( /** rct2: 0x007C78C4 */ static void flying_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7187,25 +7115,25 @@ static void flying_rc_track_25_deg_up_right_banked( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17918, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17918, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17919, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17919, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17920, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17920, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17921, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17921, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7225,47 +7153,47 @@ static void flying_rc_track_25_deg_up_right_banked( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27715, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27715, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27716, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27716, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27717, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27717, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27718, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27718, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7284,7 +7212,7 @@ static void flying_rc_track_25_deg_up_right_banked( /** rct2: 0x007C73E4 */ static void flying_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7295,41 +7223,41 @@ static void flying_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17146, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 17147, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -7345,44 +7273,44 @@ static void flying_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -7395,7 +7323,7 @@ static void flying_rc_track_on_ride_photo( /** rct2: 0x007C78D4 */ static void flying_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -7403,7 +7331,7 @@ static void flying_rc_track_25_deg_down_left_banked( /** rct2: 0x007C78E4 */ static void flying_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -7411,7 +7339,7 @@ static void flying_rc_track_25_deg_down_right_banked( /** rct2: 0x007C7404 */ static void flying_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7423,27 +7351,27 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17546, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17546, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17550, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17550, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17554, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17554, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17558, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17558, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -7457,22 +7385,22 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17547, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17547, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17551, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17551, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17555, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17555, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17559, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17559, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -7488,22 +7416,22 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17548, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17548, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17552, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17552, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17556, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17556, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17560, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17560, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -7524,31 +7452,31 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17549, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17549, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17553, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17553, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17557, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17557, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17561, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17561, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7569,22 +7497,22 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27507, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27507, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27511, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27511, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27515, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27515, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27519, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27519, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -7592,7 +7520,7 @@ static void flying_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -7605,23 +7533,23 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27508, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27508, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27512, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27512, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27516, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27516, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27520, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27520, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -7636,22 +7564,22 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27509, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27509, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27513, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27513, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27517, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27517, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27521, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27521, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -7672,23 +7600,23 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27510, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27510, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27514, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27514, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27518, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27518, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27522, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27522, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -7701,19 +7629,19 @@ static void flying_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7725,7 +7653,7 @@ static void flying_rc_track_left_eighth_to_diag( /** rct2: 0x007C7414 */ static void flying_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7737,27 +7665,27 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17530, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17530, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17534, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17534, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17538, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17538, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17542, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17542, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -7771,22 +7699,22 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17531, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17531, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17535, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17535, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17539, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17539, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17543, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17543, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -7802,22 +7730,22 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17532, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17532, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17536, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17536, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17540, 0, 0, 28, 28, 3, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17540, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17544, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17544, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -7838,31 +7766,31 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17533, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17533, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17537, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17537, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17541, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17541, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17545, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17545, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7883,22 +7811,22 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27491, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27491, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27495, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27495, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27499, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27499, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27503, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27503, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -7906,7 +7834,7 @@ static void flying_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -7919,22 +7847,22 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27492, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27492, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27496, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27496, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27500, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27500, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27504, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27504, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -7950,23 +7878,23 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27493, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27493, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27497, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27497, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27501, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27501, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27505, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27505, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -7986,22 +7914,22 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27494, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27494, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27498, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27498, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27502, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27502, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27506, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27506, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -8015,19 +7943,19 @@ static void flying_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8039,7 +7967,7 @@ static void flying_rc_track_right_eighth_to_diag( /** rct2: 0x007C7424 */ static void flying_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8048,7 +7976,7 @@ static void flying_rc_track_left_eighth_to_orthogonal( /** rct2: 0x007C7434 */ static void flying_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8057,7 +7985,7 @@ static void flying_rc_track_right_eighth_to_orthogonal( /** rct2: 0x007C7444 */ static void flying_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8069,27 +7997,27 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17578, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17578, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17582, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17582, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17586, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17586, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17590, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17590, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -8103,22 +8031,22 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17579, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17579, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17583, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17583, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17587, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17587, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17591, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17591, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -8134,22 +8062,22 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17580, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17580, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17584, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17584, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17588, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17588, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17592, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17592, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -8170,31 +8098,31 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17581, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17581, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17585, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17585, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17589, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17589, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17593, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17593, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8215,22 +8143,22 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27539, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27539, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27543, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27543, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27547, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27547, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27551, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27551, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -8239,7 +8167,7 @@ static void flying_rc_track_left_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -8252,23 +8180,23 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27540, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27540, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27544, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27544, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27548, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27548, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27552, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27552, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -8283,22 +8211,22 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27541, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27541, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27545, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27545, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27549, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27549, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27553, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27553, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -8319,23 +8247,23 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27542, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27542, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27546, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27546, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27550, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27550, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27554, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27554, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -8348,19 +8276,19 @@ static void flying_rc_track_left_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8372,7 +8300,7 @@ static void flying_rc_track_left_eighth_bank_to_diag( /** rct2: 0x007C7454 */ static void flying_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8384,27 +8312,27 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17562, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17562, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17566, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17566, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17570, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17570, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17574, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17574, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -8418,22 +8346,22 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17563, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17563, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17567, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17567, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17571, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17571, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17575, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17575, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -8449,22 +8377,22 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17564, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17564, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17568, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17568, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17572, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17572, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17576, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17576, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -8485,31 +8413,31 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17565, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17565, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17569, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17569, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17573, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17573, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17577, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17577, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8530,22 +8458,22 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27523, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27523, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27527, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27527, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27531, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27531, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27535, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27535, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -8554,7 +8482,7 @@ static void flying_rc_track_right_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -8567,22 +8495,22 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27524, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27524, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27528, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27528, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27532, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27532, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27536, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27536, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -8598,23 +8526,23 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27525, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27525, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27529, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27529, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27533, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27533, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27537, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27537, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -8634,22 +8562,22 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27526, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27526, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27530, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27530, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27534, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 27534, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27538, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27538, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -8663,19 +8591,19 @@ static void flying_rc_track_right_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8687,7 +8615,7 @@ static void flying_rc_track_right_eighth_bank_to_diag( /** rct2: 0x007C7464 */ static void flying_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8696,7 +8624,7 @@ static void flying_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x007C7474 */ static void flying_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8705,7 +8633,7 @@ static void flying_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x007C73F4 */ static void flying_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8719,7 +8647,7 @@ static void flying_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17861, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17861, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8730,7 +8658,7 @@ static void flying_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17791, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17791, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8747,7 +8675,7 @@ static void flying_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17858, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17858, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8758,7 +8686,7 @@ static void flying_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17788, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17788, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8775,7 +8703,7 @@ static void flying_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17860, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17860, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8786,7 +8714,7 @@ static void flying_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17790, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17790, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8803,22 +8731,22 @@ static void flying_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17859, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17859, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8828,22 +8756,22 @@ static void flying_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17789, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17789, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8865,7 +8793,7 @@ static void flying_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27614, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27614, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8876,7 +8804,7 @@ static void flying_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27558, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27558, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8893,7 +8821,7 @@ static void flying_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27611, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27611, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8904,7 +8832,7 @@ static void flying_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27555, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27555, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8921,7 +8849,7 @@ static void flying_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27613, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27613, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8932,7 +8860,7 @@ static void flying_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27557, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27557, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8949,7 +8877,7 @@ static void flying_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27612, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27612, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8960,7 +8888,7 @@ static void flying_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27556, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27556, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8973,19 +8901,19 @@ static void flying_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8997,7 +8925,7 @@ static void flying_rc_track_diag_flat( /** rct2: 0x007C74A4 */ static void flying_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9011,7 +8939,7 @@ static void flying_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9022,7 +8950,7 @@ static void flying_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9039,7 +8967,7 @@ static void flying_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9050,7 +8978,7 @@ static void flying_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9067,7 +8995,7 @@ static void flying_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9078,7 +9006,7 @@ static void flying_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9095,22 +9023,22 @@ static void flying_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9120,22 +9048,22 @@ static void flying_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9157,7 +9085,7 @@ static void flying_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9168,7 +9096,7 @@ static void flying_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9185,7 +9113,7 @@ static void flying_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9196,7 +9124,7 @@ static void flying_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9213,7 +9141,7 @@ static void flying_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9224,7 +9152,7 @@ static void flying_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9241,7 +9169,7 @@ static void flying_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9252,7 +9180,7 @@ static void flying_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -9265,19 +9193,19 @@ static void flying_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9289,7 +9217,7 @@ static void flying_rc_track_diag_25_deg_up( /** rct2: 0x007C7504 */ static void flying_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9303,7 +9231,7 @@ static void flying_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9314,7 +9242,7 @@ static void flying_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9331,7 +9259,7 @@ static void flying_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9342,7 +9270,7 @@ static void flying_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9359,7 +9287,7 @@ static void flying_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9370,7 +9298,7 @@ static void flying_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9387,22 +9315,22 @@ static void flying_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9412,22 +9340,22 @@ static void flying_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9447,7 +9375,7 @@ static void flying_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9461,7 +9389,7 @@ static void flying_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9475,7 +9403,7 @@ static void flying_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9489,7 +9417,7 @@ static void flying_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -9501,19 +9429,19 @@ static void flying_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9525,7 +9453,7 @@ static void flying_rc_track_diag_60_deg_up( /** rct2: 0x007C7484 */ static void flying_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9539,7 +9467,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9550,7 +9478,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9567,7 +9495,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9578,7 +9506,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9595,7 +9523,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9606,7 +9534,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9623,22 +9551,22 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9648,22 +9576,22 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9685,7 +9613,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9696,7 +9624,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9713,7 +9641,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9724,7 +9652,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9741,7 +9669,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9752,7 +9680,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9769,7 +9697,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9780,7 +9708,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9793,19 +9721,19 @@ static void flying_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9817,7 +9745,7 @@ static void flying_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x007C74E4 */ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9831,7 +9759,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9842,7 +9770,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9859,7 +9787,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9870,7 +9798,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9887,7 +9815,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9898,7 +9826,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9915,22 +9843,22 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9940,22 +9868,22 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9975,7 +9903,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9989,7 +9917,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10003,7 +9931,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10017,7 +9945,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10029,19 +9957,19 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10053,7 +9981,7 @@ static void flying_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x007C74F4 */ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10067,7 +9995,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10078,7 +10006,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10095,7 +10023,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10106,7 +10034,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10123,7 +10051,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10134,7 +10062,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10151,22 +10079,22 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10176,22 +10104,22 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10211,7 +10139,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10225,7 +10153,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10239,7 +10167,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -10253,8 +10181,8 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } @@ -10265,19 +10193,19 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10289,7 +10217,7 @@ static void flying_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x007C7494 */ static void flying_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10303,7 +10231,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10314,7 +10242,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10331,7 +10259,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10342,7 +10270,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10359,7 +10287,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10370,7 +10298,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10387,22 +10315,22 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10412,22 +10340,22 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10449,7 +10377,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10460,7 +10388,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10477,7 +10405,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10488,7 +10416,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10505,7 +10433,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10516,7 +10444,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10533,7 +10461,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10544,7 +10472,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10557,19 +10485,19 @@ static void flying_rc_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10581,7 +10509,7 @@ static void flying_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x007C74D4 */ static void flying_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10595,7 +10523,7 @@ static void flying_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17871, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10606,7 +10534,7 @@ static void flying_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17801, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10623,7 +10551,7 @@ static void flying_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17872, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10634,7 +10562,7 @@ static void flying_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17802, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10651,7 +10579,7 @@ static void flying_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17870, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10662,7 +10590,7 @@ static void flying_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17800, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10679,22 +10607,22 @@ static void flying_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17873, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10704,22 +10632,22 @@ static void flying_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17803, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10739,7 +10667,7 @@ static void flying_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10753,7 +10681,7 @@ static void flying_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10767,7 +10695,7 @@ static void flying_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10781,7 +10709,7 @@ static void flying_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10793,19 +10721,19 @@ static void flying_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10817,7 +10745,7 @@ static void flying_rc_track_diag_25_deg_down( /** rct2: 0x007C7534 */ static void flying_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10831,7 +10759,7 @@ static void flying_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17883, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10842,7 +10770,7 @@ static void flying_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17813, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10859,7 +10787,7 @@ static void flying_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17884, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10870,7 +10798,7 @@ static void flying_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17814, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10887,7 +10815,7 @@ static void flying_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17882, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10898,7 +10826,7 @@ static void flying_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17812, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10915,22 +10843,22 @@ static void flying_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17885, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10940,22 +10868,22 @@ static void flying_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17815, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10975,7 +10903,7 @@ static void flying_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -10989,7 +10917,7 @@ static void flying_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -11003,7 +10931,7 @@ static void flying_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -11017,7 +10945,7 @@ static void flying_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -11029,19 +10957,19 @@ static void flying_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11053,7 +10981,7 @@ static void flying_rc_track_diag_60_deg_down( /** rct2: 0x007C74B4 */ static void flying_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11067,7 +10995,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17867, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11078,7 +11006,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17797, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11094,7 +11022,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17868, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11105,7 +11033,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17798, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11121,7 +11049,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17866, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11132,7 +11060,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17796, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11148,22 +11076,22 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17869, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11173,22 +11101,22 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17799, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11207,7 +11135,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11220,7 +11148,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11233,7 +11161,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11246,7 +11174,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11258,19 +11186,19 @@ static void flying_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -11282,7 +11210,7 @@ static void flying_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x007C7514 */ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11296,7 +11224,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17879, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -11307,7 +11235,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17809, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -11324,7 +11252,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17880, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11335,7 +11263,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17810, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11352,7 +11280,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17878, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11363,7 +11291,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17808, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11380,22 +11308,22 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17881, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11405,22 +11333,22 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17811, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11440,8 +11368,8 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } paint_util_set_segment_support_height( @@ -11454,7 +11382,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11468,7 +11396,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11482,7 +11410,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11494,19 +11422,19 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11518,7 +11446,7 @@ static void flying_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x007C7524 */ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11532,7 +11460,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17875, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11543,7 +11471,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17805, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11560,7 +11488,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17876, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11571,7 +11499,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17806, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11588,7 +11516,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17874, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11599,7 +11527,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17804, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11616,22 +11544,22 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17877, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11641,22 +11569,22 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17807, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11676,7 +11604,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11690,7 +11618,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11704,7 +11632,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11718,7 +11646,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11730,19 +11658,19 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11754,7 +11682,7 @@ static void flying_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x007C74C4 */ static void flying_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11768,7 +11696,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17863, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11779,7 +11707,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17793, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11796,7 +11724,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17864, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11807,7 +11735,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17794, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11824,7 +11752,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17862, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11835,7 +11763,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17792, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11852,22 +11780,22 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17865, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11877,22 +11805,22 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 17795, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11912,7 +11840,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11926,7 +11854,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11940,7 +11868,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11954,7 +11882,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11966,19 +11894,19 @@ static void flying_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11990,7 +11918,7 @@ static void flying_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x007C7564 */ static void flying_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12002,7 +11930,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12016,10 +11944,10 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12033,7 +11961,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12047,22 +11975,22 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12081,7 +12009,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12095,7 +12023,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12109,7 +12037,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12123,7 +12051,7 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12136,19 +12064,19 @@ static void flying_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12160,7 +12088,7 @@ static void flying_rc_track_diag_flat_to_left_bank( /** rct2: 0x007C7574 */ static void flying_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12172,7 +12100,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12186,7 +12114,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12200,10 +12128,10 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12217,22 +12145,22 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12251,7 +12179,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12265,7 +12193,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12279,7 +12207,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12293,7 +12221,7 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12306,19 +12234,19 @@ static void flying_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12330,7 +12258,7 @@ static void flying_rc_track_diag_flat_to_right_bank( /** rct2: 0x007C7584 */ static void flying_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12342,7 +12270,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17834, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12356,10 +12284,10 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17835, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17837, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12373,7 +12301,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17833, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12387,22 +12315,22 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17836, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12421,7 +12349,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12435,7 +12363,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12449,7 +12377,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12463,7 +12391,7 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12476,19 +12404,19 @@ static void flying_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12500,7 +12428,7 @@ static void flying_rc_track_diag_left_bank_to_flat( /** rct2: 0x007C7594 */ static void flying_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12512,7 +12440,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17829, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12526,7 +12454,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17830, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12540,10 +12468,10 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17828, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17832, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12557,22 +12485,22 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17831, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12591,7 +12519,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12605,7 +12533,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12619,7 +12547,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12633,7 +12561,7 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12646,19 +12574,19 @@ static void flying_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12670,7 +12598,7 @@ static void flying_rc_track_diag_right_bank_to_flat( /** rct2: 0x007C75C4 */ static void flying_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12682,7 +12610,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12696,10 +12624,10 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12713,7 +12641,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12727,22 +12655,22 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12761,7 +12689,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12775,7 +12703,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12789,7 +12717,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12803,7 +12731,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12815,19 +12743,19 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12839,7 +12767,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x007C75D4 */ static void flying_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12851,7 +12779,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12865,7 +12793,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12879,10 +12807,10 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12896,22 +12824,22 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12930,7 +12858,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12944,7 +12872,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12958,7 +12886,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12972,7 +12900,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12984,19 +12912,19 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13008,7 +12936,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x007C75A4 */ static void flying_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13020,7 +12948,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13034,10 +12962,10 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13051,7 +12979,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13065,22 +12993,22 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13099,7 +13027,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13113,7 +13041,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13127,7 +13055,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13141,7 +13069,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13153,19 +13081,19 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13177,7 +13105,7 @@ static void flying_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x007C75B4 */ static void flying_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13189,7 +13117,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13203,7 +13131,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13217,10 +13145,10 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13234,22 +13162,22 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13268,7 +13196,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13282,7 +13210,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13296,7 +13224,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13310,7 +13238,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13322,19 +13250,19 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13346,7 +13274,7 @@ static void flying_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x007C75E4 */ static void flying_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13358,7 +13286,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17844, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13371,10 +13299,10 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17845, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17847, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13387,7 +13315,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17843, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13400,22 +13328,22 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17846, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13433,7 +13361,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13446,7 +13374,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13459,7 +13387,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13472,7 +13400,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13484,19 +13412,19 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -13508,7 +13436,7 @@ static void flying_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x007C75F4 */ static void flying_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13520,7 +13448,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17839, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13533,7 +13461,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17840, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13546,10 +13474,10 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17838, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17842, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13562,22 +13490,22 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17841, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13595,7 +13523,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13608,7 +13536,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13621,7 +13549,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13634,7 +13562,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13646,19 +13574,19 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -13670,7 +13598,7 @@ static void flying_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x007C7604 */ static void flying_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13682,7 +13610,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17854, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13696,10 +13624,10 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17855, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13713,7 +13641,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17853, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13727,22 +13655,22 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17856, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13761,7 +13689,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13775,7 +13703,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13789,7 +13717,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13803,7 +13731,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13815,19 +13743,19 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13839,7 +13767,7 @@ static void flying_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x007C7614 */ static void flying_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13851,7 +13779,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17849, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13865,7 +13793,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17850, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13879,10 +13807,10 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17848, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17852, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13896,22 +13824,22 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17851, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13930,7 +13858,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13944,7 +13872,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13958,7 +13886,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13972,7 +13900,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13984,19 +13912,19 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -14008,7 +13936,7 @@ static void flying_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x007C7544 */ static void flying_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -14020,7 +13948,7 @@ static void flying_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -14034,7 +13962,7 @@ static void flying_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -14048,7 +13976,7 @@ static void flying_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -14062,22 +13990,22 @@ static void flying_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -14096,7 +14024,7 @@ static void flying_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14110,7 +14038,7 @@ static void flying_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14124,7 +14052,7 @@ static void flying_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14138,7 +14066,7 @@ static void flying_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14151,19 +14079,19 @@ static void flying_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -14175,7 +14103,7 @@ static void flying_rc_track_diag_left_bank( /** rct2: 0x007C7554 */ static void flying_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -14187,7 +14115,7 @@ static void flying_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17825, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -14201,7 +14129,7 @@ static void flying_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17826, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -14215,7 +14143,7 @@ static void flying_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17824, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -14229,22 +14157,22 @@ static void flying_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17827, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -14263,7 +14191,7 @@ static void flying_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14277,7 +14205,7 @@ static void flying_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14291,7 +14219,7 @@ static void flying_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14305,7 +14233,7 @@ static void flying_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -14318,19 +14246,19 @@ static void flying_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -14342,7 +14270,7 @@ static void flying_rc_track_diag_right_bank( /** rct2: 0x007C7624 */ static void flying_rc_track_left_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14352,23 +14280,23 @@ static void flying_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height - 5); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height - 5); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height - 5); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height - 5); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -14385,20 +14313,20 @@ static void flying_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14413,20 +14341,20 @@ static void flying_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 24); break; } @@ -14436,7 +14364,7 @@ static void flying_rc_track_left_flyer_twist_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14454,7 +14382,7 @@ static void flying_rc_track_left_flyer_twist_up( /** rct2: 0x007C7634 */ static void flying_rc_track_right_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14464,23 +14392,23 @@ static void flying_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height - 5); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height - 5); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height - 5); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height - 5); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -14497,19 +14425,19 @@ static void flying_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14524,19 +14452,19 @@ static void flying_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 24); break; } @@ -14546,7 +14474,7 @@ static void flying_rc_track_right_flyer_twist_up( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14564,7 +14492,7 @@ static void flying_rc_track_right_flyer_twist_up( /** rct2: 0x007C7644 */ static void flying_rc_track_left_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14574,20 +14502,20 @@ static void flying_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 24); break; } @@ -14597,7 +14525,7 @@ static void flying_rc_track_left_flyer_twist_down( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -14610,20 +14538,20 @@ static void flying_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14638,23 +14566,23 @@ static void flying_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height - 5); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height - 5); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height - 5); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height - 5); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -14676,7 +14604,7 @@ static void flying_rc_track_left_flyer_twist_down( /** rct2: 0x007C7654 */ static void flying_rc_track_right_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14686,19 +14614,19 @@ static void flying_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 24); break; } @@ -14708,7 +14636,7 @@ static void flying_rc_track_right_flyer_twist_down( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -14721,19 +14649,19 @@ static void flying_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14748,23 +14676,23 @@ static void flying_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height - 5); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height - 5); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height - 5); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height - 5); + session, direction, session.TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height - 5); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height - 5, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -14786,7 +14714,7 @@ static void flying_rc_track_right_flyer_twist_down( /** rct2: 0x007C72F4 */ static void flying_rc_track_flyer_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14796,23 +14724,23 @@ static void flying_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -14826,29 +14754,28 @@ static void flying_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -14859,20 +14786,20 @@ static void flying_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -14888,19 +14815,19 @@ static void flying_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -14916,7 +14843,7 @@ static void flying_rc_track_flyer_half_loop_up( /** rct2: 0x007C7304 */ static void flying_rc_track_flyer_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14926,19 +14853,19 @@ static void flying_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17629, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17637, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17630, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 17638, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -14954,20 +14881,20 @@ static void flying_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17628, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17636, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17631, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17639, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -14983,29 +14910,28 @@ static void flying_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17627, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17635, 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17632, 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17640, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -15016,23 +14942,23 @@ static void flying_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17626, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17634, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17633, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17641, 0, 6, 32, 20, 7, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -15046,7 +14972,7 @@ static void flying_rc_track_flyer_half_loop_down( /** rct2: 0x007C7664 */ static void flying_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15056,16 +14982,16 @@ static void flying_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17150, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17150, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17151, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17151, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -15078,23 +15004,23 @@ static void flying_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -15104,7 +15030,7 @@ static void flying_rc_track_block_brakes( /** rct2: 0x007C76B4 */ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15116,24 +15042,24 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18025, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18025, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18027, 0, 6, 32, 1, 34, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18027, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18029, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18029, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18023, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18023, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -15154,25 +15080,25 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18024, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18024, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18026, 6, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18026, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18028, 6, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18028, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18022, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18022, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -15198,19 +15124,19 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27762, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27762, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27764, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27764, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27766, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27766, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27760, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27760, 0, 6, 32, 20, 3, height + 24); break; } @@ -15219,7 +15145,7 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15238,19 +15164,19 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27761, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27761, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27763, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27763, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27765, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27765, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27759, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27759, 6, 0, 20, 32, 3, height + 24); break; } @@ -15259,7 +15185,7 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15278,7 +15204,7 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x007C76C4 */ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15290,24 +15216,24 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18014, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18014, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18016, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18016, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18018, 0, 6, 32, 1, 34, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18018, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18020, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18020, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -15328,29 +15254,29 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18015, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18015, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18017, 6, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18017, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18019, 6, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18019, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18021, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18021, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -15378,19 +15304,19 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27751, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27751, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27753, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27753, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27755, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27755, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27757, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27757, 0, 6, 32, 20, 3, height + 24); break; } @@ -15399,7 +15325,7 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15418,19 +15344,19 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27752, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27752, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27754, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27754, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27756, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27756, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27758, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27758, 6, 0, 20, 32, 3, height + 24); break; } @@ -15439,7 +15365,7 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15458,7 +15384,7 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x007C76D4 */ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -15468,7 +15394,7 @@ static void flying_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x007C76E4 */ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -15478,7 +15404,7 @@ static void flying_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x007C76F4 */ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15490,27 +15416,27 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17978, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17978, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17983, 0, 0, 32, 1, 34, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17983, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17988, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17988, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17993, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17993, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -15528,21 +15454,21 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17979, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17979, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17984, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17984, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17989, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17989, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17994, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17994, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -15558,22 +15484,22 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17980, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17980, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17985, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17985, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17990, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17990, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17995, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17995, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -15589,22 +15515,22 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17981, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17981, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17986, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17986, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17991, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17991, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17996, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17996, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -15620,27 +15546,27 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17982, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17982, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17987, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17987, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17992, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17992, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17997, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17997, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -15666,19 +15592,19 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27787, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27787, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27792, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27792, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27797, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27797, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27802, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27802, 0, 6, 32, 20, 3, height + 24); break; } @@ -15687,7 +15613,7 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15703,19 +15629,19 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27788, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27788, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27793, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27793, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27798, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27798, 0, 16, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27803, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27803, 0, 16, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -15730,19 +15656,19 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27789, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27789, 0, 16, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27794, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27794, 16, 16, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27799, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27799, 16, 0, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27804, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27804, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -15758,19 +15684,19 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27790, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27790, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27795, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27795, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27800, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27800, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27805, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27805, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -15785,19 +15711,19 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27791, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27791, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27796, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27796, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27801, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27801, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27806, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27806, 6, 0, 20, 32, 3, height + 24); break; } @@ -15806,7 +15732,7 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15825,7 +15751,7 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x007C7704 */ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15837,27 +15763,27 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17958, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17958, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17963, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17963, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17968, 0, 0, 32, 1, 34, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 17968, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17973, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17973, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -15875,22 +15801,22 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17959, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17959, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17964, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17964, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17969, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17969, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17974, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17974, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -15905,21 +15831,21 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17960, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17960, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17965, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17965, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17970, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17970, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17975, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17975, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -15936,22 +15862,22 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17961, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17961, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17966, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17966, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17971, 0, 0, 1, 1, 34, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 17971, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17976, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17976, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -15967,27 +15893,27 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17962, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17962, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17967, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17967, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17972, 0, 0, 1, 32, 34, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17972, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17977, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17977, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -16013,19 +15939,19 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27767, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27767, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27772, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27772, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27777, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27777, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27782, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27782, 0, 6, 32, 20, 3, height + 24); break; } @@ -16034,7 +15960,7 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -16050,19 +15976,19 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27768, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27768, 0, 16, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27773, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27773, 0, 16, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27778, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27778, 0, 0, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27783, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27783, 0, 0, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -16077,19 +16003,19 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27769, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27769, 0, 0, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27774, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27774, 16, 0, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27779, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27779, 16, 16, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27784, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27784, 0, 16, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -16105,19 +16031,19 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27770, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27770, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27775, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27775, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27780, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27780, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27785, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27785, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -16132,19 +16058,19 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27771, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27771, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27776, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27776, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27781, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27781, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27786, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 27786, 6, 0, 20, 32, 3, height + 24); break; } @@ -16153,7 +16079,7 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -16172,7 +16098,7 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x007C7714 */ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -16182,7 +16108,7 @@ static void flying_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x007C7724 */ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -16192,7 +16118,7 @@ static void flying_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x007C7734 */ static void flying_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16201,27 +16127,27 @@ static void flying_rc_track_25_deg_up_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17922, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17922, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17923, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17923, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17930, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17930, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17924, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17924, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17925, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17925, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16241,47 +16167,47 @@ static void flying_rc_track_25_deg_up_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27719, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27719, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27720, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27720, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27721, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27721, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27722, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27722, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16300,7 +16226,7 @@ static void flying_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x007C7744 */ static void flying_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16309,27 +16235,27 @@ static void flying_rc_track_25_deg_up_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17926, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17926, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17927, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17927, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17928, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17928, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17931, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17931, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17929, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17929, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16349,47 +16275,47 @@ static void flying_rc_track_25_deg_up_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27723, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27723, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27724, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27724, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27725, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27725, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27726, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27726, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16408,7 +16334,7 @@ static void flying_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x007C7754 */ static void flying_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16417,27 +16343,27 @@ static void flying_rc_track_left_banked_25_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17932, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17932, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17933, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17933, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17940, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17940, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17934, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17934, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17935, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17935, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16457,47 +16383,47 @@ static void flying_rc_track_left_banked_25_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27727, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27727, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27728, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27728, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27729, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27729, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27730, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27730, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16516,7 +16442,7 @@ static void flying_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x007C7764 */ static void flying_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16525,27 +16451,27 @@ static void flying_rc_track_right_banked_25_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17936, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17936, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17937, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17937, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17938, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17938, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17941, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17941, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17939, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17939, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16565,47 +16491,47 @@ static void flying_rc_track_right_banked_25_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27731, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27731, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27732, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27732, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27733, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27733, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27734, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27734, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16624,7 +16550,7 @@ static void flying_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x007C7774 */ static void flying_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_banked_25_deg_up_to_25_deg_up( @@ -16633,7 +16559,7 @@ static void flying_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x007C7784 */ static void flying_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -16641,7 +16567,7 @@ static void flying_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x007C7794 */ static void flying_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_right_banked_25_deg_up( @@ -16650,7 +16576,7 @@ static void flying_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x007C77A4 */ static void flying_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_25_deg_up_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -16658,7 +16584,7 @@ static void flying_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x007C77B4 */ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16667,25 +16593,25 @@ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17942, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17942, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17943, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17943, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17944, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17944, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17945, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17945, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16705,47 +16631,47 @@ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27735, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27735, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27736, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27736, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27737, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27737, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27738, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27738, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16764,7 +16690,7 @@ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x007C77C4 */ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16773,25 +16699,25 @@ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17946, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17946, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17947, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17947, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17948, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17948, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17949, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17949, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16811,47 +16737,47 @@ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27739, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27739, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27740, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27740, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27741, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27741, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27742, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27742, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16870,7 +16796,7 @@ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x007C77F4 */ static void flying_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16879,25 +16805,25 @@ static void flying_rc_track_left_banked_25_deg_up_to_left_banked_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17950, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17950, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17951, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17951, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17952, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17952, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17953, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17953, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -16917,47 +16843,47 @@ static void flying_rc_track_left_banked_25_deg_up_to_left_banked_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27743, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27743, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27744, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27744, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27745, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27745, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27746, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27746, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -16976,7 +16902,7 @@ static void flying_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x007C7804 */ static void flying_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -16985,25 +16911,25 @@ static void flying_rc_track_right_banked_25_deg_up_to_right_banked_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17954, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17954, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17955, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17955, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17956, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17956, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17957, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17957, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -17023,47 +16949,47 @@ static void flying_rc_track_right_banked_25_deg_up_to_right_banked_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27747, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27747, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27748, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27748, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27749, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27749, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27750, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27750, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -17082,7 +17008,7 @@ static void flying_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x007C7814 */ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -17091,7 +17017,7 @@ static void flying_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x007C7824 */ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -17100,7 +17026,7 @@ static void flying_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x007C77D4 */ static void flying_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -17109,7 +17035,7 @@ static void flying_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x007C77E4 */ static void flying_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -17118,7 +17044,7 @@ static void flying_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x007C7834 */ static void flying_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -17127,27 +17053,27 @@ static void flying_rc_track_flat_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17894, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17894, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17895, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17895, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17902, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17902, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17896, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17896, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17897, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17897, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -17167,47 +17093,47 @@ static void flying_rc_track_flat_to_left_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27695, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27695, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27696, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27696, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27697, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27697, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27698, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27698, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -17226,7 +17152,7 @@ static void flying_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x007C7844 */ static void flying_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -17235,27 +17161,27 @@ static void flying_rc_track_flat_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17898, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17898, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17899, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17899, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17900, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17900, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17903, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17903, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17901, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17901, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -17275,47 +17201,47 @@ static void flying_rc_track_flat_to_right_banked_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27699, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27699, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27700, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27700, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27701, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27701, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27702, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27702, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 49, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -17334,7 +17260,7 @@ static void flying_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x007C7854 */ static void flying_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -17343,27 +17269,27 @@ static void flying_rc_track_left_banked_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17904, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17904, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17905, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17905, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17912, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17912, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17906, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17906, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17907, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17907, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -17383,47 +17309,47 @@ static void flying_rc_track_left_banked_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27703, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27703, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27704, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27704, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27705, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27705, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27706, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27706, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -17442,7 +17368,7 @@ static void flying_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x007C7864 */ static void flying_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -17451,27 +17377,27 @@ static void flying_rc_track_right_banked_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17908, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17908, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17909, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17909, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17910, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17910, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17913, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17913, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17911, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 17911, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -17491,47 +17417,47 @@ static void flying_rc_track_right_banked_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27707, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27707, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27708, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27708, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27709, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27709, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27710, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27710, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 47, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -17550,7 +17476,7 @@ static void flying_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x007C7874 */ static void flying_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -17558,7 +17484,7 @@ static void flying_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x007C7884 */ static void flying_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -17566,7 +17492,7 @@ static void flying_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x007C7894 */ static void flying_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -17574,7 +17500,7 @@ static void flying_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x007C78A4 */ static void flying_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { flying_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); diff --git a/src/openrct2/ride/coaster/GigaCoaster.cpp b/src/openrct2/ride/coaster/GigaCoaster.cpp index bbf23111d4..debc5f5adb 100644 --- a/src/openrct2/ride/coaster/GigaCoaster.cpp +++ b/src/openrct2/ride/coaster/GigaCoaster.cpp @@ -41,7 +41,7 @@ static constexpr const uint32_t _GigaCoasterBrakeImages[NumOrthogonalDirections] /** rct2: 0x008AD674 */ static void giga_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -51,17 +51,17 @@ static void giga_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18692, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18692, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18693, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18693, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else if (trackElement.HasChain()) @@ -70,24 +70,24 @@ static void giga_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18382, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18382, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18383, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18383, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18384, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18384, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18385, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18385, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -97,17 +97,17 @@ static void giga_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -117,7 +117,7 @@ static void giga_rc_track_flat( } static void giga_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -131,18 +131,18 @@ static void giga_rc_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _GigaCoasterBrakeImages[direction][isClosed][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, + session, direction, _GigaCoasterBrakeImages[direction][isClosed][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -151,7 +151,7 @@ static void giga_rc_track_station( /** rct2: 0x008AD684 */ static void giga_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -160,24 +160,24 @@ static void giga_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18702, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18702, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18703, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18703, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18704, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18704, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18705, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18705, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else if (trackElement.HasChain()) @@ -186,24 +186,24 @@ static void giga_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18394, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18394, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18395, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18395, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18396, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18396, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18397, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18397, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -212,24 +212,24 @@ static void giga_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18134, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18134, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18135, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18135, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18136, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18136, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18137, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18137, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -247,7 +247,7 @@ static void giga_rc_track_25_deg_up( /** rct2: 0x008AD694 */ static void giga_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -256,24 +256,24 @@ static void giga_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18718, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18718, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18719, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18719, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18720, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18720, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18721, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18721, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -282,24 +282,24 @@ static void giga_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18150, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18150, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18151, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18151, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18152, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18152, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18153, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18153, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -317,7 +317,7 @@ static void giga_rc_track_60_deg_up( /** rct2: 0x008AD6A4 */ static void giga_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -326,24 +326,24 @@ static void giga_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18694, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18694, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18695, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18695, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18696, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18696, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18697, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18697, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else if (trackElement.HasChain()) @@ -352,24 +352,24 @@ static void giga_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18386, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18386, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18387, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18387, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18388, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18388, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18389, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18389, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -378,24 +378,24 @@ static void giga_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18126, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18126, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18127, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18127, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18128, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18128, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18129, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18129, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -413,7 +413,7 @@ static void giga_rc_track_flat_to_25_deg_up( /** rct2: 0x008AD6B4 */ static void giga_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -422,28 +422,28 @@ static void giga_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18706, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18706, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18707, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18707, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18710, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18710, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18708, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18708, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18711, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18711, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18709, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18709, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -452,28 +452,28 @@ static void giga_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18138, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18138, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18139, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18139, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18142, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18142, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18140, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18140, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18143, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18143, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18141, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18141, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -491,7 +491,7 @@ static void giga_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008AD6C4 */ static void giga_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -500,28 +500,28 @@ static void giga_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18712, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18712, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18713, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18713, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18716, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18716, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18714, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18714, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18717, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18717, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18715, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18715, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -530,28 +530,28 @@ static void giga_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18144, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18144, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18145, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18145, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18148, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18148, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18146, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18146, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18149, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18149, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18147, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18147, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -569,7 +569,7 @@ static void giga_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008AD6D4 */ static void giga_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasCableLift()) @@ -578,24 +578,24 @@ static void giga_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else if (trackElement.HasChain()) @@ -604,24 +604,24 @@ static void giga_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18390, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18390, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18391, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18391, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18392, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18392, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18393, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18393, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -630,24 +630,24 @@ static void giga_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18130, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18130, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18131, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18131, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18132, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18132, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18133, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18133, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -665,7 +665,7 @@ static void giga_rc_track_25_deg_up_to_flat( /** rct2: 0x008AD6E4 */ static void giga_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -673,7 +673,7 @@ static void giga_rc_track_25_deg_down( /** rct2: 0x008AD6F4 */ static void giga_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -681,7 +681,7 @@ static void giga_rc_track_60_deg_down( /** rct2: 0x008AD704 */ static void giga_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -689,7 +689,7 @@ static void giga_rc_track_flat_to_25_deg_down( /** rct2: 0x008AD714 */ static void giga_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -697,7 +697,7 @@ static void giga_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008AD724 */ static void giga_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -705,7 +705,7 @@ static void giga_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008AD734 */ static void giga_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -713,7 +713,7 @@ static void giga_rc_track_25_deg_down_to_flat( /** rct2: 0x008AD744 */ static void giga_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -723,22 +723,22 @@ static void giga_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18189, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18189, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18194, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18194, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18199, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18199, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18184, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18184, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -755,21 +755,19 @@ static void giga_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18188, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18188, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18193, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18193, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18198, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18198, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18183, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18183, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -784,22 +782,20 @@ static void giga_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18187, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18187, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18192, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18192, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18197, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18197, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18182, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18182, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -814,21 +810,19 @@ static void giga_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18186, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18186, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18191, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18191, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18196, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18196, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18181, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18181, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -843,22 +837,22 @@ static void giga_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18185, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18185, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18190, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18190, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18195, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18195, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18180, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18180, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -877,7 +871,7 @@ static void giga_rc_track_left_quarter_turn_5( /** rct2: 0x008AD754 */ static void giga_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -886,35 +880,35 @@ static void giga_rc_track_right_quarter_turn_5( /** rct2: 0x008AD764 */ static void giga_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18086, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18086, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18094, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18094, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18087, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18087, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18095, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18095, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18088, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18088, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18089, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18089, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -924,35 +918,35 @@ static void giga_rc_track_flat_to_left_bank( /** rct2: 0x008AD774 */ static void giga_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18090, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18090, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18091, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18091, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18092, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18092, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18096, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18096, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18093, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18093, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18097, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18097, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -962,35 +956,35 @@ static void giga_rc_track_flat_to_right_bank( /** rct2: 0x008AD784 */ static void giga_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18092, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18092, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18096, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18096, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18093, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18093, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18097, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18097, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18090, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18090, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18091, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18091, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1000,35 +994,35 @@ static void giga_rc_track_left_bank_to_flat( /** rct2: 0x008AD794 */ static void giga_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18088, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18088, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18089, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18089, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18086, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18086, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18094, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18094, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18087, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18087, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18095, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18095, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1038,7 +1032,7 @@ static void giga_rc_track_right_bank_to_flat( /** rct2: 0x008AD7A4 */ static void giga_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1048,26 +1042,24 @@ static void giga_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18209, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18209, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18220, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18220, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18214, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18214, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18219, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18219, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18204, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18204, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1084,22 +1076,20 @@ static void giga_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18208, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18208, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18213, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18213, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18218, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18218, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18203, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18203, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1114,22 +1104,20 @@ static void giga_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18207, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18207, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18212, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18212, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18217, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18217, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18202, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18202, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1144,22 +1132,20 @@ static void giga_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18206, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18206, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18211, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18211, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18216, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18216, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18201, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18201, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1174,26 +1160,24 @@ static void giga_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18205, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18205, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18210, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18210, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18215, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18215, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18221, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18221, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18200, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18200, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1212,7 +1196,7 @@ static void giga_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008AD7B4 */ static void giga_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1221,35 +1205,35 @@ static void giga_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008AD7C4 */ static void giga_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18098, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18098, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18102, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18102, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18099, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18099, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18103, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18103, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18100, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18100, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18101, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18101, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1266,35 +1250,35 @@ static void giga_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008AD7D4 */ static void giga_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18104, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18104, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18105, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18105, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18106, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18106, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18108, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18108, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18107, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18107, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18109, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18109, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1311,35 +1295,35 @@ static void giga_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008AD7E4 */ static void giga_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18110, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18110, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18114, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18114, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18111, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18111, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18115, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18115, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18112, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18112, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18113, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18113, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1356,35 +1340,35 @@ static void giga_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008AD7F4 */ static void giga_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18116, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18116, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18117, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18117, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18118, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18118, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18120, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18120, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18119, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18119, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18121, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18121, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1401,7 +1385,7 @@ static void giga_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008AD804 */ static void giga_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1409,7 +1393,7 @@ static void giga_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008AD814 */ static void giga_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1417,7 +1401,7 @@ static void giga_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008AD824 */ static void giga_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1425,7 +1409,7 @@ static void giga_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008AD834 */ static void giga_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1433,31 +1417,31 @@ static void giga_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008AD844 */ static void giga_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18122, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18122, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18123, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18123, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18124, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18124, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18125, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18125, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -1467,7 +1451,7 @@ static void giga_rc_track_left_bank( /** rct2: 0x008AD854 */ static void giga_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1475,7 +1459,7 @@ static void giga_rc_track_right_bank( /** rct2: 0x008AD864 */ static void giga_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1485,22 +1469,22 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18274, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18274, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18279, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18279, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18284, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18284, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18289, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18289, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -1517,21 +1501,19 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18275, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18275, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18280, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18280, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18285, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18285, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18290, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18290, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1546,22 +1528,20 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18276, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18276, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18281, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18281, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18286, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18286, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18291, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18291, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1576,21 +1556,19 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18277, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18277, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18282, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18282, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18287, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18287, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18292, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18292, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1605,22 +1583,22 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18278, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18278, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18283, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18283, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18288, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18288, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18293, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18293, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1639,7 +1617,7 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008AD874 */ static void giga_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1649,22 +1627,22 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18254, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18254, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18259, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18259, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18269, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18269, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -1681,21 +1659,19 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18255, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18255, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18260, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18260, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18265, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18265, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18270, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18270, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1710,22 +1686,20 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18256, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18256, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18261, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18261, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18266, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18266, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18271, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18271, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1740,21 +1714,19 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18257, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18257, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18262, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18262, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18267, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18267, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18272, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18272, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1769,22 +1741,22 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18258, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18258, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18263, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18263, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18268, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18268, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18273, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18273, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -1803,7 +1775,7 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008AD884 */ static void giga_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1812,7 +1784,7 @@ static void giga_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008AD894 */ static void giga_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1821,7 +1793,7 @@ static void giga_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008AD8A4 */ static void giga_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1831,22 +1803,22 @@ static void giga_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18238, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18242, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18241, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18245, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1860,23 +1832,23 @@ static void giga_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18239, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18239, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18243, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18243, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18240, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18240, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18244, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18244, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -1891,23 +1863,23 @@ static void giga_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18240, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18240, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18244, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18244, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18239, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18239, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18243, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18243, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1922,22 +1894,22 @@ static void giga_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18241, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18245, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18238, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18242, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1956,7 +1928,7 @@ static void giga_rc_track_s_bend_left( /** rct2: 0x008AD8B4 */ static void giga_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1966,22 +1938,22 @@ static void giga_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18246, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18246, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18250, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18250, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18249, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18249, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18253, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18253, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1995,23 +1967,23 @@ static void giga_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18247, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18247, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18251, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18251, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18248, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18248, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18252, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18252, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -2026,23 +1998,23 @@ static void giga_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18248, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18248, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18252, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18252, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18247, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18247, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18251, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18251, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2057,22 +2029,22 @@ static void giga_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18249, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18249, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18253, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18253, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18246, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18246, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18250, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18250, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2091,7 +2063,7 @@ static void giga_rc_track_s_bend_right( /** rct2: 0x008AD8F4 */ static void giga_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2101,22 +2073,22 @@ static void giga_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18159, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18159, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18162, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18165, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18165, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18156, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2133,21 +2105,19 @@ static void giga_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18158, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18158, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18161, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18161, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18164, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18164, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18155, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18155, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2160,22 +2130,22 @@ static void giga_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18157, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18157, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18160, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18160, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18163, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18163, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18154, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18154, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2194,7 +2164,7 @@ static void giga_rc_track_left_quarter_turn_3( /** rct2: 0x008AD904 */ static void giga_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2203,7 +2173,7 @@ static void giga_rc_track_right_quarter_turn_3( /** rct2: 0x008AD914 */ static void giga_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2213,26 +2183,24 @@ static void giga_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18171, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18171, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18178, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18178, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18174, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18174, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18177, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18177, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18168, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18168, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2249,22 +2217,20 @@ static void giga_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18170, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18170, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18173, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18173, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18176, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18176, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18167, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18167, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2277,26 +2243,24 @@ static void giga_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18169, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18169, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18172, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18172, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18175, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18175, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18179, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18179, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18166, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18166, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2315,7 +2279,7 @@ static void giga_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008AD924 */ static void giga_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2324,7 +2288,7 @@ static void giga_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008AD934 */ static void giga_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2334,22 +2298,22 @@ static void giga_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18305, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18305, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18307, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18307, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18309, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18309, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18303, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18303, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2369,22 +2333,22 @@ static void giga_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18304, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18304, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18306, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18306, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18308, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18308, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18302, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18302, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2403,7 +2367,7 @@ static void giga_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008AD944 */ static void giga_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2413,22 +2377,22 @@ static void giga_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18294, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18294, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18296, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18296, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18298, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18298, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18300, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18300, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -2448,27 +2412,27 @@ static void giga_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18295, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18295, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18297, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18297, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18299, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18299, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18301, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18301, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2489,7 +2453,7 @@ static void giga_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008AD954 */ static void giga_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2498,7 +2462,7 @@ static void giga_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008AD964 */ static void giga_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2507,7 +2471,7 @@ static void giga_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008AD974 */ static void giga_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2517,26 +2481,24 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18329, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18329, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18336, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18336, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18332, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18332, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18335, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18335, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18326, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18326, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2554,22 +2516,20 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18328, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18328, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18331, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18331, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18334, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18334, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18325, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18325, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2582,26 +2542,24 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18327, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18327, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18330, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18330, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18333, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18333, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18337, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18337, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18324, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18324, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2621,26 +2579,24 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18326, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18326, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18329, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18329, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18336, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18336, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18332, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18332, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18335, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18335, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -2663,23 +2619,21 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18325, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18325, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18328, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18328, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18331, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18331, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18334, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18334, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2691,26 +2645,24 @@ static void giga_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18324, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18324, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18327, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18327, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18330, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18330, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18333, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18333, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18337, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18337, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -2725,7 +2677,7 @@ static void giga_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008AD984 */ static void giga_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2735,26 +2687,24 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18310, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18310, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18313, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18313, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18316, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18316, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18319, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18319, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18323, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18323, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2772,23 +2722,21 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18311, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18311, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18314, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18314, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18317, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18317, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18320, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18320, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2800,26 +2748,24 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18312, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18312, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18315, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18315, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18322, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18322, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18318, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18318, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18321, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18321, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -2839,26 +2785,24 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18313, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18313, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18316, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18316, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18319, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18319, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18323, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18323, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18310, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18310, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2881,22 +2825,20 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18314, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18314, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18317, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18317, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18320, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18320, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18311, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18311, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2909,26 +2851,24 @@ static void giga_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18315, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18315, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18322, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18322, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18318, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18318, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18321, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18321, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18312, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18312, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -2943,7 +2883,7 @@ static void giga_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008AD994 */ static void giga_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2957,7 +2897,7 @@ static void giga_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008AD9A4 */ static void giga_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2971,7 +2911,7 @@ static void giga_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008AD9B4 */ static void giga_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2981,26 +2921,24 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18369, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18369, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18380, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18380, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18374, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18374, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18379, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18379, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18364, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18364, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3018,22 +2956,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18368, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18368, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18373, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18373, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18378, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18378, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18363, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18363, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3048,22 +2984,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18367, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18367, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18372, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18372, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18377, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18377, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18362, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18362, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3078,22 +3012,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18366, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18366, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18371, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18371, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18376, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18376, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18361, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18361, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3108,26 +3040,24 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18365, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18365, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18370, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18370, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18375, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18375, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18381, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18381, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18360, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18360, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3147,26 +3077,24 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18364, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18364, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18369, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18369, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18380, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18380, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18374, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18374, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18379, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18379, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3189,22 +3117,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18363, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18363, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18368, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18368, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18373, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18373, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18378, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18378, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3219,22 +3145,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18362, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18362, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18367, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18367, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18372, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18372, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18377, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18377, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3249,22 +3173,20 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18361, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18361, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18366, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18366, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18371, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18371, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18376, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18376, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3279,26 +3201,24 @@ static void giga_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18360, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18360, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18365, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18365, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18370, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18370, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18375, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18375, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18381, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18381, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -3313,7 +3233,7 @@ static void giga_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008AD9C4 */ static void giga_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3323,26 +3243,24 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18338, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18338, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18343, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18343, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18348, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18348, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18353, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18353, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18359, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18359, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3360,22 +3278,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18339, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18339, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18344, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18344, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18349, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18349, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18354, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18354, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3390,22 +3306,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18340, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18340, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18345, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18345, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18350, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18350, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18355, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18355, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3420,22 +3334,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18341, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18341, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18346, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18346, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18351, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18351, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18356, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18356, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3450,31 +3362,29 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18342, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18342, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18347, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18347, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18358, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18358, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18352, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18352, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18357, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18357, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3496,26 +3406,24 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18343, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18343, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18348, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18348, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18353, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18353, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18359, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18359, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18338, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18338, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3538,22 +3446,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18344, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18344, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18349, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18349, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18354, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18354, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18339, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18339, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3568,22 +3474,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18345, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18345, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18350, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18350, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18355, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18355, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18340, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18340, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3598,22 +3502,20 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18346, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18346, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18351, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18351, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18356, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18356, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18341, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18341, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3628,31 +3530,29 @@ static void giga_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18347, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18347, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18358, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18358, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18352, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18352, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18357, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18357, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18342, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18342, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3669,7 +3569,7 @@ static void giga_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008AD9D4 */ static void giga_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3683,7 +3583,7 @@ static void giga_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008AD9E4 */ static void giga_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3697,34 +3597,34 @@ static void giga_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008ADA14 */ static void giga_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18231, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18231, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18235, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18235, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18232, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18232, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18236, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18236, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18233, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18233, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18237, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18237, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18230, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18230, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18234, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18234, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -3734,34 +3634,34 @@ static void giga_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008AD9F4 */ static void giga_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18222, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18222, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18226, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18226, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18223, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18223, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18227, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18227, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18224, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18224, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18228, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18228, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18225, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18225, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18229, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18229, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -3771,7 +3671,7 @@ static void giga_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008ADA04 */ static void giga_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -3779,7 +3679,7 @@ static void giga_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008ADA24 */ static void giga_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -3787,7 +3687,7 @@ static void giga_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008ADA34 */ static void giga_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3795,25 +3695,25 @@ static void giga_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_SW_NE_CLOSED_1, 0, 0, 32, 20, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_SW_NE_CLOSED_1, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_SW_NE_CLOSED_2, 0, 0, 32, 1, 11, + session, direction, session.TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_SW_NE_CLOSED_2, 0, 0, 32, 1, 11, height, 0, 27, height + 5); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_NW_SE_CLOSED_1, 0, 0, 32, 20, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_NW_SE_CLOSED_1, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_NW_SE_CLOSED_2, 0, 0, 32, 1, 11, + session, direction, session.TrackColours[SCHEME_TRACK] | GIGA_COASTER_BRAKE_NW_SE_CLOSED_2, 0, 0, 32, 1, 11, height, 0, 27, height + 5); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -3823,31 +3723,31 @@ static void giga_rc_track_brakes( /** rct2: 0x008ADC84 */ static void giga_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18560, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18560, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18561, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18561, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18562, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18562, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18563, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18563, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3864,31 +3764,31 @@ static void giga_rc_track_25_deg_up_left_banked( /** rct2: 0x008ADC94 */ static void giga_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18564, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18564, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18565, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18565, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18566, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18566, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18567, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18567, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3905,38 +3805,38 @@ static void giga_rc_track_25_deg_up_right_banked( /** rct2: 0x008ADA44 */ static void giga_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18074, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18075, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -3947,7 +3847,7 @@ static void giga_rc_track_on_ride_photo( /** rct2: 0x008ADCA4 */ static void giga_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -3955,7 +3855,7 @@ static void giga_rc_track_25_deg_down_left_banked( /** rct2: 0x008ADCB4 */ static void giga_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -3963,7 +3863,7 @@ static void giga_rc_track_25_deg_down_right_banked( /** rct2: 0x008ADED4 */ static void giga_rc_track_flat_to_60_deg_up_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3975,29 +3875,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18722, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18722, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18726, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18726, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18730, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18730, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18734, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18734, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -4006,29 +3906,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18660, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18660, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18664, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18664, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18668, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18668, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18672, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18672, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -4046,29 +3946,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18723, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18723, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18727, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18727, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18731, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18731, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18735, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18735, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -4077,29 +3977,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18661, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18661, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18665, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18665, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18669, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18669, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18673, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18673, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_set_segment_support_height( @@ -4113,29 +4013,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18724, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18724, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18728, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18728, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18732, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18732, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18736, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18736, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -4144,29 +4044,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18662, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18662, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18666, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18666, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18670, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18670, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18674, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18674, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_set_segment_support_height( @@ -4180,29 +4080,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18725, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18725, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18729, 0, 0, 32, 1, 98, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18729, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18733, 0, 0, 32, 1, 98, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18733, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18737, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18737, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -4211,29 +4111,29 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18663, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18663, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18667, 0, 0, 32, 1, 98, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18667, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18671, 0, 0, 32, 1, 98, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 18671, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18675, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 18675, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } switch (direction) @@ -4254,7 +4154,7 @@ static void giga_rc_track_flat_to_60_deg_up_long_base( /** rct2: 0x008ADEE4 */ static void giga_rc_track_60_deg_up_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4264,27 +4164,25 @@ static void giga_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18676, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18676, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18680, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18680, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18684, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18684, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18688, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18688, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4299,25 +4197,25 @@ static void giga_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18677, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18677, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18681, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18681, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18685, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18685, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18689, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18689, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4328,25 +4226,25 @@ static void giga_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18678, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18678, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18682, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18682, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18686, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18686, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18690, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18690, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -4357,25 +4255,25 @@ static void giga_rc_track_60_deg_up_to_flat_long_base( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18679, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18679, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18683, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18683, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18687, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18687, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18691, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18691, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -4395,7 +4293,7 @@ static void giga_rc_track_60_deg_up_to_flat_long_base( /** rct2: 0x008ADEF4 */ static void giga_rc_track_60_deg_down_to_flat_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_flat_to_60_deg_up_long_base(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); @@ -4403,7 +4301,7 @@ static void giga_rc_track_60_deg_down_to_flat_long_base( /** rct2: 0x008ADF04 */ static void giga_rc_track_flat_to_60_deg_down_long_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_60_deg_up_to_flat_long_base(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); @@ -4411,7 +4309,7 @@ static void giga_rc_track_flat_to_60_deg_down_long_base( /** rct2: 0x008ADF14 */ static void giga_rc_track_cable_lift_hill( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4421,25 +4319,25 @@ static void giga_rc_track_cable_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4458,25 +4356,25 @@ static void giga_rc_track_cable_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18700, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18701, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18698, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18699, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4495,31 +4393,29 @@ static void giga_rc_track_cable_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18714, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18714, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18717, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18717, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18715, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18715, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18712, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18712, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18713, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18713, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18716, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18716, 0, 0, 32, 1, 66, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4538,27 +4434,25 @@ static void giga_rc_track_cable_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18720, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18720, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18721, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18721, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18718, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18718, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18719, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18719, 0, 0, 32, 1, 98, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4577,7 +4471,7 @@ static void giga_rc_track_cable_lift_hill( /** rct2: 0x008ADA64 */ static void giga_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4587,22 +4481,22 @@ static void giga_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18414, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18414, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18418, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18418, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18422, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18422, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18426, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18426, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4616,21 +4510,19 @@ static void giga_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18415, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18415, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18419, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18419, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18423, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18423, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18427, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18427, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4645,22 +4537,20 @@ static void giga_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18416, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18416, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18420, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18420, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18424, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18424, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18428, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18428, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4678,30 +4568,28 @@ static void giga_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18417, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18417, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18421, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18421, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18425, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18425, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18429, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18429, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4716,7 +4604,7 @@ static void giga_rc_track_left_eighth_to_diag( /** rct2: 0x008ADA74 */ static void giga_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4726,22 +4614,22 @@ static void giga_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18398, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18398, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18402, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18402, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18406, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18406, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18410, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18410, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4755,21 +4643,19 @@ static void giga_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18399, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18399, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18403, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18403, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18407, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18407, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18411, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18411, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4784,21 +4670,19 @@ static void giga_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18400, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18400, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18404, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18404, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18408, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18408, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18412, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18412, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4816,30 +4700,28 @@ static void giga_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18401, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18401, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18405, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18405, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18409, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18409, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18413, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18413, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4854,7 +4736,7 @@ static void giga_rc_track_right_eighth_to_diag( /** rct2: 0x008ADA84 */ static void giga_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4863,7 +4745,7 @@ static void giga_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008ADA94 */ static void giga_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4872,7 +4754,7 @@ static void giga_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008ADAA4 */ static void giga_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4882,24 +4764,22 @@ static void giga_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18446, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18446, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18450, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18450, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18454, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18454, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18458, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18458, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4913,22 +4793,20 @@ static void giga_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18447, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18447, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18451, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18451, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18455, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18455, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18459, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18459, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4943,22 +4821,20 @@ static void giga_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18448, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18448, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18452, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18452, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18456, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18456, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18460, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18460, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4976,30 +4852,29 @@ static void giga_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18449, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18449, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18453, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18453, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18457, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18457, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18461, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18461, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5014,7 +4889,7 @@ static void giga_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008ADAB4 */ static void giga_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5024,24 +4899,22 @@ static void giga_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18430, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18430, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18434, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18434, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18438, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18438, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18442, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18442, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5055,22 +4928,20 @@ static void giga_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18431, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18431, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18435, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18435, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18439, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18439, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18443, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18443, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5085,22 +4956,20 @@ static void giga_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18432, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18432, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18436, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18436, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18440, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 18440, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18444, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18444, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5118,30 +4987,29 @@ static void giga_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18433, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18433, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18437, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18437, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18441, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18441, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18445, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18445, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5156,7 +5024,7 @@ static void giga_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008ADAC4 */ static void giga_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5165,7 +5033,7 @@ static void giga_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008ADAD4 */ static void giga_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5174,7 +5042,7 @@ static void giga_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008ADA54 */ static void giga_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5186,7 +5054,7 @@ static void giga_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18527, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18527, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5197,7 +5065,7 @@ static void giga_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18465, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18465, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5213,7 +5081,7 @@ static void giga_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18524, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18524, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5224,7 +5092,7 @@ static void giga_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18462, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18462, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5240,7 +5108,7 @@ static void giga_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18526, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18526, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5251,7 +5119,7 @@ static void giga_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18464, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18464, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5267,22 +5135,22 @@ static void giga_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18525, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18525, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5292,22 +5160,22 @@ static void giga_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18463, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18463, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5320,7 +5188,7 @@ static void giga_rc_track_diag_flat( /** rct2: 0x008ADB04 */ static void giga_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5332,7 +5200,7 @@ static void giga_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18539, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18539, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5343,7 +5211,7 @@ static void giga_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18477, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18477, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5359,7 +5227,7 @@ static void giga_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18536, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18536, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5370,7 +5238,7 @@ static void giga_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18474, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18474, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5386,7 +5254,7 @@ static void giga_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18538, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18538, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5397,7 +5265,7 @@ static void giga_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18476, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18476, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5413,22 +5281,22 @@ static void giga_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18537, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18537, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5438,22 +5306,22 @@ static void giga_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18475, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18475, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5466,7 +5334,7 @@ static void giga_rc_track_diag_25_deg_up( /** rct2: 0x008ADB64 */ static void giga_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5476,7 +5344,7 @@ static void giga_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18489, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18489, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5489,7 +5357,7 @@ static void giga_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18486, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18486, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5502,7 +5370,7 @@ static void giga_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18488, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18488, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5515,22 +5383,22 @@ static void giga_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18487, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18487, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5542,7 +5410,7 @@ static void giga_rc_track_diag_60_deg_up( /** rct2: 0x008ADAE4 */ static void giga_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5554,7 +5422,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18531, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18531, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5565,7 +5433,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18469, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18469, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5581,7 +5449,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18528, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18528, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5592,7 +5460,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18466, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18466, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5608,7 +5476,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18530, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18530, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5619,7 +5487,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18468, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18468, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5635,22 +5503,22 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18529, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18529, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5660,22 +5528,22 @@ static void giga_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18467, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18467, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5688,7 +5556,7 @@ static void giga_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008ADB44 */ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5698,7 +5566,7 @@ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18481, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18481, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5711,7 +5579,7 @@ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18478, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18478, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5724,7 +5592,7 @@ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18480, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18480, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5737,22 +5605,22 @@ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18479, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18479, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5764,7 +5632,7 @@ static void giga_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008ADB54 */ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5774,7 +5642,7 @@ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18485, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18485, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5787,7 +5655,7 @@ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18482, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18482, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5800,7 +5668,7 @@ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18484, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18484, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5813,22 +5681,22 @@ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18483, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18483, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5840,7 +5708,7 @@ static void giga_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008ADAF4 */ static void giga_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5852,7 +5720,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18535, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18535, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5863,7 +5731,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18473, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18473, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5879,7 +5747,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18532, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18532, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5890,7 +5758,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18470, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18470, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5906,7 +5774,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18534, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18534, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5917,7 +5785,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18472, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18472, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5933,22 +5801,22 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18533, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18533, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5958,22 +5826,22 @@ static void giga_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18471, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18471, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5986,7 +5854,7 @@ static void giga_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008ADB34 */ static void giga_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5998,7 +5866,7 @@ static void giga_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18537, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18537, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6009,7 +5877,7 @@ static void giga_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18475, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18475, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6025,7 +5893,7 @@ static void giga_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18538, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18538, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6036,7 +5904,7 @@ static void giga_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18476, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18476, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6052,7 +5920,7 @@ static void giga_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18536, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18536, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6063,7 +5931,7 @@ static void giga_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18474, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18474, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6079,22 +5947,22 @@ static void giga_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18539, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18539, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6104,22 +5972,22 @@ static void giga_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18477, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18477, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6132,7 +6000,7 @@ static void giga_rc_track_diag_25_deg_down( /** rct2: 0x008ADB94 */ static void giga_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6142,7 +6010,7 @@ static void giga_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18487, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18487, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6155,7 +6023,7 @@ static void giga_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18488, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18488, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6168,7 +6036,7 @@ static void giga_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18486, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18486, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6181,22 +6049,22 @@ static void giga_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18489, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18489, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6208,7 +6076,7 @@ static void giga_rc_track_diag_60_deg_down( /** rct2: 0x008ADB14 */ static void giga_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6220,7 +6088,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18533, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18533, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6231,7 +6099,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18471, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18471, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6246,7 +6114,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18534, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18534, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6257,7 +6125,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18472, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18472, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6272,7 +6140,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18532, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18532, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6283,7 +6151,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18470, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18470, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6298,22 +6166,22 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18535, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18535, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6323,22 +6191,22 @@ static void giga_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18473, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18473, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6352,7 +6220,7 @@ static void giga_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008ADB74 */ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6362,7 +6230,7 @@ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18483, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18483, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6375,7 +6243,7 @@ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18484, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18484, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6388,7 +6256,7 @@ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18482, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18482, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6401,22 +6269,22 @@ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18485, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18485, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6428,7 +6296,7 @@ static void giga_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008ADB84 */ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6438,7 +6306,7 @@ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18479, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18479, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6451,7 +6319,7 @@ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18480, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18480, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6464,7 +6332,7 @@ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18478, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18478, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6477,22 +6345,22 @@ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18481, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18481, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6504,7 +6372,7 @@ static void giga_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008ADB24 */ static void giga_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6516,7 +6384,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18529, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18529, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6527,7 +6395,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18467, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18467, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6543,7 +6411,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18530, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18530, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6554,7 +6422,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18468, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18468, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6570,7 +6438,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18528, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18528, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6581,7 +6449,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18466, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18466, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6597,22 +6465,22 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18531, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18531, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6622,22 +6490,22 @@ static void giga_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18469, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18469, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6650,7 +6518,7 @@ static void giga_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008ADBC4 */ static void giga_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6660,7 +6528,7 @@ static void giga_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18497, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18497, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6673,10 +6541,10 @@ static void giga_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18494, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18494, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18498, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18498, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6689,7 +6557,7 @@ static void giga_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18496, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18496, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6702,22 +6570,22 @@ static void giga_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18495, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18495, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6729,7 +6597,7 @@ static void giga_rc_track_diag_flat_to_left_bank( /** rct2: 0x008ADBD4 */ static void giga_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6739,7 +6607,7 @@ static void giga_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18502, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18502, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6752,7 +6620,7 @@ static void giga_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18499, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18499, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6765,10 +6633,10 @@ static void giga_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18501, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18501, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18503, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18503, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6781,22 +6649,22 @@ static void giga_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18500, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18500, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6808,7 +6676,7 @@ static void giga_rc_track_diag_flat_to_right_bank( /** rct2: 0x008ADBE4 */ static void giga_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6818,7 +6686,7 @@ static void giga_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18500, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18500, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6831,10 +6699,10 @@ static void giga_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18501, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18501, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18503, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18503, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6847,7 +6715,7 @@ static void giga_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18499, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18499, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6860,22 +6728,22 @@ static void giga_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18502, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18502, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6887,7 +6755,7 @@ static void giga_rc_track_diag_left_bank_to_flat( /** rct2: 0x008ADBF4 */ static void giga_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6897,7 +6765,7 @@ static void giga_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18495, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18495, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6910,7 +6778,7 @@ static void giga_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18496, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18496, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6923,10 +6791,10 @@ static void giga_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18494, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18494, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18498, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18498, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6939,22 +6807,22 @@ static void giga_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18497, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18497, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6966,7 +6834,7 @@ static void giga_rc_track_diag_right_bank_to_flat( /** rct2: 0x008ADC24 */ static void giga_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6976,7 +6844,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18517, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18517, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6989,10 +6857,10 @@ static void giga_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18514, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18514, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18518, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18518, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7005,7 +6873,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18516, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18516, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7018,22 +6886,22 @@ static void giga_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18515, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18515, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7045,7 +6913,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008ADC34 */ static void giga_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7055,7 +6923,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18522, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18522, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7068,7 +6936,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18519, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18519, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7081,10 +6949,10 @@ static void giga_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18521, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18521, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18523, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18523, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7097,22 +6965,22 @@ static void giga_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18520, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18520, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7124,7 +6992,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008ADC04 */ static void giga_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7134,7 +7002,7 @@ static void giga_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18507, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18507, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7147,10 +7015,10 @@ static void giga_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18504, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18504, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18508, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18508, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7163,7 +7031,7 @@ static void giga_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18506, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18506, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7176,22 +7044,22 @@ static void giga_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18505, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18505, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7203,7 +7071,7 @@ static void giga_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008ADC14 */ static void giga_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7213,7 +7081,7 @@ static void giga_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18512, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18512, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7226,7 +7094,7 @@ static void giga_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18509, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18509, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7239,10 +7107,10 @@ static void giga_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18511, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18511, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18513, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18513, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7255,22 +7123,22 @@ static void giga_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18510, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18510, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7282,7 +7150,7 @@ static void giga_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008ADC44 */ static void giga_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7292,7 +7160,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18510, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18510, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7304,10 +7172,10 @@ static void giga_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18511, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18511, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18513, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18513, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7319,7 +7187,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18509, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18509, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7331,22 +7199,22 @@ static void giga_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18512, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18512, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7359,7 +7227,7 @@ static void giga_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008ADC54 */ static void giga_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7369,7 +7237,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18505, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18505, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7381,7 +7249,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18506, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18506, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7393,10 +7261,10 @@ static void giga_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18504, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18504, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18508, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18508, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7408,22 +7276,22 @@ static void giga_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18507, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18507, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7436,7 +7304,7 @@ static void giga_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008ADC64 */ static void giga_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7446,7 +7314,7 @@ static void giga_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18520, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18520, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7459,10 +7327,10 @@ static void giga_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18521, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18521, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18523, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18523, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7475,7 +7343,7 @@ static void giga_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18519, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18519, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7488,22 +7356,22 @@ static void giga_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18522, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18522, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7515,7 +7383,7 @@ static void giga_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008ADC74 */ static void giga_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7525,7 +7393,7 @@ static void giga_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18515, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18515, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7538,7 +7406,7 @@ static void giga_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18516, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18516, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7551,10 +7419,10 @@ static void giga_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18514, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18514, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18518, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18518, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7567,22 +7435,22 @@ static void giga_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18517, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18517, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7594,7 +7462,7 @@ static void giga_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008ADBA4 */ static void giga_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7604,7 +7472,7 @@ static void giga_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18493, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18493, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7617,7 +7485,7 @@ static void giga_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18490, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18490, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7630,7 +7498,7 @@ static void giga_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18492, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18492, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7643,22 +7511,22 @@ static void giga_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18491, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18491, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7670,7 +7538,7 @@ static void giga_rc_track_diag_left_bank( /** rct2: 0x008ADBB4 */ static void giga_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7680,7 +7548,7 @@ static void giga_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18491, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18491, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7693,7 +7561,7 @@ static void giga_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18492, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18492, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7706,7 +7574,7 @@ static void giga_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18490, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18490, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7719,22 +7587,22 @@ static void giga_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18493, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18493, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7746,20 +7614,20 @@ static void giga_rc_track_diag_right_bank( /** rct2: 0x008ADEC4 */ static void giga_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _GigaCoasterBrakeImages[direction][isClosed][0], 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | _GigaCoasterBrakeImages[direction][isClosed][0], 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _GigaCoasterBrakeImages[direction][isClosed][1], 0, 0, 32, 1, + session, direction, session.TrackColours[SCHEME_TRACK] | _GigaCoasterBrakeImages[direction][isClosed][1], 0, 0, 32, 1, 11, height, 0, 27, height + 5); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( @@ -7769,7 +7637,7 @@ static void giga_rc_track_block_brakes( /** rct2: 0x008ADCC4 */ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7779,23 +7647,22 @@ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18655, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18655, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18657, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18657, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18659, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18659, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18653, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18653, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -7815,24 +7682,22 @@ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18654, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18654, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18656, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18656, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18658, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18658, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18652, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18652, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -7851,7 +7716,7 @@ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008ADCD4 */ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7861,23 +7726,22 @@ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18644, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18644, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18646, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18646, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18648, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18648, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18650, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18650, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -7897,29 +7761,27 @@ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18645, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18645, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18647, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18647, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18649, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18649, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18651, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18651, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7940,7 +7802,7 @@ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008ADCE4 */ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7950,7 +7812,7 @@ static void giga_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008ADCF4 */ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7959,7 +7821,7 @@ static void giga_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008ADD04 */ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7969,23 +7831,22 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18624, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18624, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18629, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18629, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18634, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18634, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18639, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18639, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -8002,22 +7863,19 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18625, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18625, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18630, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18630, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18635, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18635, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18640, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18640, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -8032,22 +7890,19 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18626, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18626, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18631, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18631, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18636, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18636, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18641, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18641, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -8062,23 +7917,19 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18627, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18627, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18632, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18632, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18637, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18637, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18642, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18642, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8093,24 +7944,22 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18628, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18628, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18633, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18633, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18638, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18638, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18643, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18643, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8129,7 +7978,7 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008ADD14 */ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8139,23 +7988,22 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18604, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18604, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18609, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18609, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18614, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18614, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18619, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18619, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -8172,22 +8020,19 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18605, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18605, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18610, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18610, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18615, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18615, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18620, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18620, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -8202,22 +8047,19 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18606, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18606, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18611, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18611, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18616, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18616, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18621, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18621, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -8232,23 +8074,19 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18607, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18607, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18612, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18612, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18617, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18617, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18622, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18622, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8263,24 +8101,22 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18608, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18608, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18613, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18613, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18618, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18618, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18623, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18623, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8299,7 +8135,7 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008ADD24 */ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8309,7 +8145,7 @@ static void giga_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008ADD34 */ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8318,33 +8154,33 @@ static void giga_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008ADD44 */ static void giga_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18568, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18568, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18569, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18569, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18576, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18576, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18570, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18570, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18571, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18571, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8361,33 +8197,33 @@ static void giga_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x008ADD54 */ static void giga_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18572, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18572, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18573, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18573, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18574, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18574, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18577, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18577, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18575, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18575, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8404,33 +8240,33 @@ static void giga_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x008ADD64 */ static void giga_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18578, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18578, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18579, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18579, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18586, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18586, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18580, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18580, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18581, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18581, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8447,33 +8283,33 @@ static void giga_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008ADD74 */ static void giga_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18582, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18582, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18583, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18583, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18584, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18584, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18587, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18587, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18585, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18585, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8490,7 +8326,7 @@ static void giga_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008ADD84 */ static void giga_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8498,7 +8334,7 @@ static void giga_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x008ADD94 */ static void giga_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8506,7 +8342,7 @@ static void giga_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x008ADDA4 */ static void giga_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8514,7 +8350,7 @@ static void giga_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008ADDB4 */ static void giga_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_25_deg_up_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8522,31 +8358,31 @@ static void giga_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008ADDC4 */ static void giga_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18588, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18588, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18589, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18589, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18590, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18590, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18591, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18591, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8563,31 +8399,31 @@ static void giga_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x008ADDD4 */ static void giga_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18592, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18592, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18593, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18593, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18594, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18594, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18595, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18595, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8604,31 +8440,31 @@ static void giga_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x008ADE04 */ static void giga_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18596, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18596, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18597, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18597, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18598, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18598, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18599, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18599, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8645,31 +8481,31 @@ static void giga_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x008ADE14 */ static void giga_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18600, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18600, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18601, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18601, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18602, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18602, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18603, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18603, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8686,7 +8522,7 @@ static void giga_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x008ADE24 */ static void giga_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -8695,7 +8531,7 @@ static void giga_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x008ADE34 */ static void giga_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -8704,7 +8540,7 @@ static void giga_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x008ADDE4 */ static void giga_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -8713,7 +8549,7 @@ static void giga_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x008ADDF4 */ static void giga_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -8722,33 +8558,33 @@ static void giga_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x008ADE44 */ static void giga_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18540, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18540, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18541, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18541, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18548, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18548, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18542, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18542, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18543, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18543, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8765,33 +8601,33 @@ static void giga_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x008ADE54 */ static void giga_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18544, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18544, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18545, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18545, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18546, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18546, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18549, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18549, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18547, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18547, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8808,33 +8644,33 @@ static void giga_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x008ADE64 */ static void giga_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18550, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18550, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18551, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18551, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18558, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18558, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18552, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18552, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18553, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18553, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8851,33 +8687,33 @@ static void giga_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x008ADE74 */ static void giga_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18554, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18554, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18555, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18555, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18556, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18556, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18559, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18559, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18557, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18557, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8894,7 +8730,7 @@ static void giga_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x008ADE84 */ static void giga_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8902,7 +8738,7 @@ static void giga_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x008ADE94 */ static void giga_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8910,7 +8746,7 @@ static void giga_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x008ADEA4 */ static void giga_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8918,14 +8754,14 @@ static void giga_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x008ADEB4 */ static void giga_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { giga_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void giga_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { // These offsets could be moved to the g2.dat file when that supports offsets. @@ -8939,19 +8775,19 @@ static void giga_rc_track_booster( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_GIGA_RC_BOOSTER_NE_SW, ne_sw_offsetX, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_GIGA_RC_BOOSTER_NE_SW, ne_sw_offsetX, ne_sw_offsetY, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_GIGA_RC_BOOSTER_NW_SE, nw_se_offsetX, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_GIGA_RC_BOOSTER_NW_SE, nw_se_offsetX, nw_se_offsetY, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/HeartlineTwisterCoaster.cpp b/src/openrct2/ride/coaster/HeartlineTwisterCoaster.cpp index 25f3f406c0..3b150ee702 100644 --- a/src/openrct2/ride/coaster/HeartlineTwisterCoaster.cpp +++ b/src/openrct2/ride/coaster/HeartlineTwisterCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x0087694C */ static void heartline_twister_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -29,31 +29,31 @@ static void heartline_twister_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21354, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21354, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21356, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21356, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21355, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21355, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21357, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21357, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21358, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21358, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21360, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21360, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21359, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21359, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21361, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21361, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -64,18 +64,18 @@ static void heartline_twister_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21294, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21294, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21296, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21296, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21295, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21295, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21297, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21297, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -85,7 +85,7 @@ static void heartline_twister_rc_track_flat( } static void heartline_twister_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -96,11 +96,11 @@ static void heartline_twister_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -109,7 +109,7 @@ static void heartline_twister_rc_track_station( /** rct2: 0x0087695C */ static void heartline_twister_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -118,31 +118,31 @@ static void heartline_twister_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21378, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21378, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21382, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21382, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21379, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21379, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21383, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21383, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21380, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21380, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21384, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21384, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21381, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21381, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21385, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21385, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -152,31 +152,31 @@ static void heartline_twister_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21322, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21322, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21326, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21326, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21323, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21323, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21327, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21327, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21324, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21324, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21328, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21328, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21325, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21325, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21329, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21329, 0, 0, 32, 1, 50, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -194,7 +194,7 @@ static void heartline_twister_rc_track_25_deg_up( /** rct2: 0x008769FC */ static void heartline_twister_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -203,31 +203,31 @@ static void heartline_twister_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21402, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21402, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21406, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21406, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21403, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21403, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21407, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21407, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21404, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21404, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21408, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21408, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21405, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21405, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21409, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21409, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -237,31 +237,31 @@ static void heartline_twister_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21346, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21346, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21350, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21350, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21347, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21347, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21351, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21351, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21348, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21348, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21352, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21352, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21349, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21349, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21353, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21353, 0, 0, 32, 1, 98, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -279,7 +279,7 @@ static void heartline_twister_rc_track_60_deg_up( /** rct2: 0x0087696C */ static void heartline_twister_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -288,31 +288,31 @@ static void heartline_twister_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21362, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21362, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21366, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21366, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21363, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21363, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21367, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21367, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21364, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21364, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21368, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21368, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21365, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21365, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21369, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21369, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -322,31 +322,31 @@ static void heartline_twister_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 42, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -364,7 +364,7 @@ static void heartline_twister_rc_track_flat_to_25_deg_up( /** rct2: 0x008769BC */ static void heartline_twister_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -373,31 +373,31 @@ static void heartline_twister_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21386, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21386, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21390, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21390, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21387, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21387, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21391, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21391, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21388, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21388, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21392, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21392, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21389, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21389, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21393, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21393, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -407,31 +407,31 @@ static void heartline_twister_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21330, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21330, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21334, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21334, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21331, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21331, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21335, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21335, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21332, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21332, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21336, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21336, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21333, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21333, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21337, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21337, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -449,7 +449,7 @@ static void heartline_twister_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008769CC */ static void heartline_twister_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -458,31 +458,31 @@ static void heartline_twister_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21394, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21394, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21398, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21398, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21395, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21395, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21399, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21399, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 18, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21396, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21396, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21400, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 19, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21400, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 19, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21397, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21397, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21401, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21401, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -492,31 +492,31 @@ static void heartline_twister_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21338, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21338, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21342, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21342, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21339, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21339, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21343, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21343, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 18, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21340, 0, 0, 32, 20, 2, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 21340, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21344, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 19, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21344, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 19, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21341, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21341, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21345, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21345, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -534,7 +534,7 @@ static void heartline_twister_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x0087697C */ static void heartline_twister_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -543,31 +543,31 @@ static void heartline_twister_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21370, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21370, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21374, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21374, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21371, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21371, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21375, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21375, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21372, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21372, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21376, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21376, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21373, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21373, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21377, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21377, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -577,31 +577,31 @@ static void heartline_twister_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -619,7 +619,7 @@ static void heartline_twister_rc_track_25_deg_up_to_flat( /** rct2: 0x0087698C */ static void heartline_twister_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -627,7 +627,7 @@ static void heartline_twister_rc_track_25_deg_down( /** rct2: 0x00876A0C */ static void heartline_twister_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -635,7 +635,7 @@ static void heartline_twister_rc_track_60_deg_down( /** rct2: 0x0087699C */ static void heartline_twister_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -643,7 +643,7 @@ static void heartline_twister_rc_track_flat_to_25_deg_down( /** rct2: 0x008769DC */ static void heartline_twister_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -651,7 +651,7 @@ static void heartline_twister_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008769EC */ static void heartline_twister_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -659,7 +659,7 @@ static void heartline_twister_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008769AC */ static void heartline_twister_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { heartline_twister_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -667,7 +667,7 @@ static void heartline_twister_rc_track_25_deg_down_to_flat( /** rct2: 0x00876A6C */ static void heartline_twister_rc_track_heartline_transfer_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -677,35 +677,35 @@ static void heartline_twister_rc_track_heartline_transfer_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -724,63 +724,63 @@ static void heartline_twister_rc_track_heartline_transfer_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 6, 5, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 5, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 7, 6, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 6, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 6, 7, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 7, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 7, 8, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 8, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -791,35 +791,31 @@ static void heartline_twister_rc_track_heartline_transfer_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21298, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21298, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21302, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21302, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21299, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21299, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21303, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21303, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21300, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21300, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21304, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21304, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21301, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21301, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21305, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21305, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -830,34 +826,34 @@ static void heartline_twister_rc_track_heartline_transfer_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; } @@ -877,7 +873,7 @@ static void heartline_twister_rc_track_heartline_transfer_up( /** rct2: 0x00876A7C */ static void heartline_twister_rc_track_heartline_transfer_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -887,34 +883,34 @@ static void heartline_twister_rc_track_heartline_transfer_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height - 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height - 8, 0, 6, height - 7); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height - 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height - 8, 0, 27, height - 8); break; } @@ -934,63 +930,63 @@ static void heartline_twister_rc_track_heartline_transfer_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21314, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21318, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 6, 5, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 5, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21315, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21319, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 7, 6, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 6, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21316, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21320, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 6, 7, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 7, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height + 8, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21317, 0, 0, 32, 20, 2, height + 8, 0, 6, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height + 16, 0, 6, height + 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height + 8, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21321, 0, 0, 32, 1, 34, height + 8, 0, 27, height + 8); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 1, 34, height + 16, 0, 27, height + 16); - wooden_a_supports_paint_setup(session, 7, 8, height + 8, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 8, height + 8, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1001,35 +997,31 @@ static void heartline_twister_rc_track_heartline_transfer_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21298, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21298, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21302, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21302, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21299, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21299, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21303, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21303, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21300, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21300, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21304, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21304, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21301, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21301, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21305, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21305, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1040,35 +1032,35 @@ static void heartline_twister_rc_track_heartline_transfer_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21306, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21310, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21307, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21311, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21308, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21312, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21309, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21313, 0, 0, 32, 20, 0, height, 0, 6, height + 23); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1087,7 +1079,7 @@ static void heartline_twister_rc_track_heartline_transfer_down( /** rct2: 0x00876A4C */ static void heartline_twister_rc_track_left_heartline_roll( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1097,35 +1089,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21410, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21410, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21422, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21422, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21413, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21413, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21425, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21425, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21416, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21416, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21428, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21428, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21419, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21419, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21431, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21431, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1137,35 +1125,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21411, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21411, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21423, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21423, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21414, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21414, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21426, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21426, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21417, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21417, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21429, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21429, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21420, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21420, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21432, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21432, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1176,35 +1160,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21412, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21412, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21424, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21424, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21415, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21415, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21427, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21427, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21418, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21418, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21430, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21430, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21421, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21421, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21433, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21433, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1215,35 +1195,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21418, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21418, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21430, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21430, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21421, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21421, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21433, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21433, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21412, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21412, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21424, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21424, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21415, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21415, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21427, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21427, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1254,35 +1230,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21417, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21417, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21429, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21429, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21420, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21420, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21432, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21432, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21411, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21411, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21423, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21423, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21414, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21414, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21426, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21426, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1293,35 +1265,31 @@ static void heartline_twister_rc_track_left_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21416, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21416, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21428, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21428, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21419, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21419, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21431, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21431, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21410, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21410, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21422, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21422, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21413, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21413, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21425, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21425, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1333,7 +1301,7 @@ static void heartline_twister_rc_track_left_heartline_roll( /** rct2: 0x00876A5C */ static void heartline_twister_rc_track_right_heartline_roll( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1343,35 +1311,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21434, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21434, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21446, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21446, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21437, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21437, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21449, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21449, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21440, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21440, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21452, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21452, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21443, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21443, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21455, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21455, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1383,35 +1347,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21435, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21435, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21447, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21447, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21438, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21438, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21450, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21450, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21441, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21441, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21453, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21453, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21444, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21444, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21456, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21456, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1422,35 +1382,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21436, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21436, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21448, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21448, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21439, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21439, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21451, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21451, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21442, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21442, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21454, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21454, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21445, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21445, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21457, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21457, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1461,35 +1417,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21442, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21442, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21454, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21454, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21445, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21445, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21457, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21457, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21436, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21436, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21448, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21448, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21439, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21439, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21451, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21451, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1500,35 +1452,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21441, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21441, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21453, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21453, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21444, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21444, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21456, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21456, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21435, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21435, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21447, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21447, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21438, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21438, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21450, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21450, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1539,35 +1487,31 @@ static void heartline_twister_rc_track_right_heartline_roll( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21440, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21440, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21452, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21452, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21443, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21443, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21455, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21455, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21434, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21434, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21446, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21446, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21437, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21437, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21449, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21449, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); diff --git a/src/openrct2/ride/coaster/HybridCoaster.cpp b/src/openrct2/ride/coaster/HybridCoaster.cpp index bbba9080ca..0f9b02738e 100644 --- a/src/openrct2/ride/coaster/HybridCoaster.cpp +++ b/src/openrct2/ride/coaster/HybridCoaster.cpp @@ -26,17 +26,17 @@ namespace HybridRC { - static uint32_t GetTrackColour(paint_session* session) + static uint32_t GetTrackColour(paint_session& session) { - if (session->TrackColours[SCHEME_TRACK] == 0x21600000) + if (session.TrackColours[SCHEME_TRACK] == 0x21600000) return 0x21600000; // TODO dirty hack else - return (session->TrackColours[SCHEME_TRACK] & ~0x1F000000) - | ((session->TrackColours[SCHEME_SUPPORTS] & 0xF80000) << 5); + return (session.TrackColours[SCHEME_TRACK] & ~0x1F000000) + | ((session.TrackColours[SCHEME_SUPPORTS] & 0xF80000) << 5); } static void TrackFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -51,14 +51,14 @@ namespace HybridRC session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT + (direction & 1)), 0, 0, 32, 20, 3, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void TrackStation( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -81,7 +81,7 @@ namespace HybridRC height + 3); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_narrow_station_platform(session, ride, direction, height, 10, trackElement); @@ -91,7 +91,7 @@ namespace HybridRC } static void Track25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -106,7 +106,7 @@ namespace HybridRC session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE + direction + 8), 0, 0, 32, 20, 2, height, 0, 6, height + 3); } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -120,7 +120,7 @@ namespace HybridRC } static void Track60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const CoordsXYZ boundBoxOffsets[4] = { @@ -157,10 +157,10 @@ namespace HybridRC if (direction == 1 || direction == 2) { - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; } - wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -174,7 +174,7 @@ namespace HybridRC } static void TrackFlatTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -189,7 +189,7 @@ namespace HybridRC session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE + direction), 0, 0, 32, 20, 3, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -203,7 +203,7 @@ namespace HybridRC } static void Track25DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -216,7 +216,7 @@ namespace HybridRC height, 0, 6, height); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_LIFT_TRACK_STEEP + 1), 0, 0, 32, 20, 3, height, 0, 3, height + 3); PaintAddImageAsParentRotated( @@ -224,7 +224,7 @@ namespace HybridRC height, 0, 28, height); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_LIFT_TRACK_STEEP + 3), 0, 0, 32, 20, 3, height, 0, 3, height + 3); PaintAddImageAsParentRotated( @@ -248,7 +248,7 @@ namespace HybridRC 0, 6, height + 2); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP + 1), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( @@ -256,7 +256,7 @@ namespace HybridRC 0, 28, height); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP + 3), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( @@ -270,7 +270,7 @@ namespace HybridRC break; } } - wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -284,7 +284,7 @@ namespace HybridRC } static void Track60DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -297,7 +297,7 @@ namespace HybridRC height, 0, 6, height); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_LIFT_TRACK_STEEP + 7), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( @@ -305,7 +305,7 @@ namespace HybridRC height, 0, 27, height); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_LIFT_TRACK_STEEP + 9), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( @@ -329,7 +329,7 @@ namespace HybridRC 0, 6, height); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP + 7), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( @@ -337,7 +337,7 @@ namespace HybridRC 0, 27, height); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP + 9), 0, 0, 32, 20, 3, height, 0, 6, height); @@ -352,7 +352,7 @@ namespace HybridRC break; } } - wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -366,7 +366,7 @@ namespace HybridRC } static void Track25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -381,7 +381,7 @@ namespace HybridRC session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE + direction + 4), 0, 0, 32, 20, 2, height, 0, 6, height + 3); } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -395,49 +395,49 @@ namespace HybridRC } static void Track25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpTo60DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const CoordsXYZ boundBoxOffsets[4] = { @@ -475,14 +475,14 @@ namespace HybridRC } static void Track90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track90DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegUpTo90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const CoordsXYZ boundBoxOffsets[4] = { @@ -511,7 +511,7 @@ namespace HybridRC session, direction, GetTrackColour(session) | imageIds[direction], 0, 0, boundBoxLengths[direction].x, boundBoxLengths[direction].y, boundBoxLengths[direction].z, height, boundBoxOffsets[direction].x, boundBoxOffsets[direction].y, boundBoxOffsets[direction].z); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -526,14 +526,14 @@ namespace HybridRC } static void Track90DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpTo90DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track90DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const CoordsXYZ boundBoxOffsets[4] = { @@ -573,7 +573,7 @@ namespace HybridRC } static void Track60DegDownTo90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -615,7 +615,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -627,25 +627,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 3), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 6), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 9), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -665,25 +665,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 1), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 4), 0, 0, 16, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 7), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 10), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -698,25 +698,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 2), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 5), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 8), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE + 11), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -735,7 +735,7 @@ namespace HybridRC } static void TrackRightQuarterTurn3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -743,7 +743,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -755,25 +755,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 5), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 10), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 15), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -795,25 +795,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 1), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 6), 0, 0, 36, 16, 3, height, 0, 4, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 11), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 16), 0, 0, 32, 14, 3, height, 0, 18, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -830,25 +830,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 2), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 7), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 12), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 17), 0, 0, 33, 33, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -871,25 +871,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 3), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 8), 0, 0, 16, 36, 3, height, 4, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 13), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 18), 0, 0, 14, 32, 3, height, 18, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -906,25 +906,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 4), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 9), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 14), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE + 19), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -943,7 +943,7 @@ namespace HybridRC } static void TrackRightQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -951,7 +951,7 @@ namespace HybridRC } static void TrackLeftEighthToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -963,25 +963,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 4), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 8), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 12), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -998,25 +998,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 1), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 5), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 9), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 13), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1029,25 +1029,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 2), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 6), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 10), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 14), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1057,16 +1057,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1103,7 +1103,7 @@ namespace HybridRC } static void TrackRightEighthToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1115,25 +1115,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 16), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 20), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 24), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 28), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1150,25 +1150,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 17), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 21), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 25), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 29), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1181,25 +1181,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 18), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 22), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 26), 0, 0, 28, 28, 3, height, 4, 4, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE + 30), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1209,16 +1209,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1255,7 +1255,7 @@ namespace HybridRC } static void TrackLeftEighthToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1263,7 +1263,7 @@ namespace HybridRC } static void TrackRightEighthToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1271,7 +1271,7 @@ namespace HybridRC } static void TrackDiagFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1313,7 +1313,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_LIFT_TRACK_FLAT_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1331,16 +1331,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1372,16 +1372,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1417,7 +1417,7 @@ namespace HybridRC } static void TrackDiag25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1474,16 +1474,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1515,16 +1515,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1560,7 +1560,7 @@ namespace HybridRC } static void TrackDiag25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1617,16 +1617,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1658,16 +1658,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1703,7 +1703,7 @@ namespace HybridRC } static void TrackDiagFlatTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1760,16 +1760,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1801,16 +1801,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1846,7 +1846,7 @@ namespace HybridRC } static void TrackDiag25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1903,16 +1903,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1944,16 +1944,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -1989,7 +1989,7 @@ namespace HybridRC } static void TrackDiagFlatTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2045,16 +2045,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2085,16 +2085,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2130,7 +2130,7 @@ namespace HybridRC } static void TrackDiag25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2187,16 +2187,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2228,16 +2228,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2273,7 +2273,7 @@ namespace HybridRC } static void TrackDiag60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2330,16 +2330,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2371,16 +2371,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2416,7 +2416,7 @@ namespace HybridRC } static void TrackDiag25DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2473,16 +2473,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2514,16 +2514,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2559,7 +2559,7 @@ namespace HybridRC } static void TrackDiag60DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2616,16 +2616,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2657,16 +2657,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2702,7 +2702,7 @@ namespace HybridRC } static void TrackDiag60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2759,16 +2759,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2800,16 +2800,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2845,7 +2845,7 @@ namespace HybridRC } static void TrackDiag25DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2902,16 +2902,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2943,16 +2943,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -2988,7 +2988,7 @@ namespace HybridRC } static void TrackDiag60DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3045,16 +3045,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3086,16 +3086,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3131,7 +3131,7 @@ namespace HybridRC } static void TrackFlatToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3163,14 +3163,14 @@ namespace HybridRC height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void TrackFlatToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3202,28 +3202,28 @@ namespace HybridRC height, 0, 27, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void TrackLeftBankToflat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToRightBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankToflat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToLeftBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3255,7 +3255,7 @@ namespace HybridRC height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3269,7 +3269,7 @@ namespace HybridRC } static void TrackRightBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3301,7 +3301,7 @@ namespace HybridRC height, 0, 27, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3315,7 +3315,7 @@ namespace HybridRC } static void Track25DegUpToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3347,7 +3347,7 @@ namespace HybridRC height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -3361,7 +3361,7 @@ namespace HybridRC } static void Track25DegUpToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3393,7 +3393,7 @@ namespace HybridRC height, 0, 27, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -3407,35 +3407,35 @@ namespace HybridRC } static void TrackLeftBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToRightBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToLeftBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBankTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBankTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftbank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3467,21 +3467,21 @@ namespace HybridRC height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void TrackRightbank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftbank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackDiagFlatToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3513,16 +3513,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3540,16 +3540,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3571,7 +3571,7 @@ namespace HybridRC } static void TrackDiagFlatToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3600,16 +3600,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3630,16 +3630,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3661,7 +3661,7 @@ namespace HybridRC } static void TrackDiagLeftBankToflat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3693,16 +3693,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3720,16 +3720,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3751,7 +3751,7 @@ namespace HybridRC } static void TrackDiagRightBankToflat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3780,16 +3780,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3810,16 +3810,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3841,7 +3841,7 @@ namespace HybridRC } static void TrackDiagLeftBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3873,16 +3873,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3900,16 +3900,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3931,7 +3931,7 @@ namespace HybridRC } static void TrackDiagRightBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3960,16 +3960,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -3990,16 +3990,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4021,7 +4021,7 @@ namespace HybridRC } static void TrackDiag25DegUpToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4053,16 +4053,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4080,16 +4080,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4111,7 +4111,7 @@ namespace HybridRC } static void TrackDiag25DegUpToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4140,16 +4140,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4170,16 +4170,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4201,7 +4201,7 @@ namespace HybridRC } static void TrackDiagLeftBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4232,16 +4232,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4258,16 +4258,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4289,7 +4289,7 @@ namespace HybridRC } static void TrackDiagRightBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4317,16 +4317,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4346,16 +4346,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4377,7 +4377,7 @@ namespace HybridRC } static void TrackDiag25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4409,16 +4409,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4436,16 +4436,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4467,7 +4467,7 @@ namespace HybridRC } static void TrackDiag25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4496,16 +4496,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4526,16 +4526,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4557,7 +4557,7 @@ namespace HybridRC } static void TrackDiagLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4589,16 +4589,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4616,16 +4616,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4647,7 +4647,7 @@ namespace HybridRC } static void TrackDiagRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4676,16 +4676,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4706,16 +4706,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -4737,7 +4737,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn3Bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4752,7 +4752,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 1), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4761,19 +4761,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 5), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 9), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 13), 0, 0, 26, 32, 3, height, 6, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4793,25 +4793,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 2), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 6), 0, 0, 16, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 10), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 14), 0, 0, 22, 22, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4826,7 +4826,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 3), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4835,7 +4835,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 8), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4844,13 +4844,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 12), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_CURVE_BANKED + 15), 0, 0, 32, 26, 3, height, 6, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4869,7 +4869,7 @@ namespace HybridRC } static void TrackRightQuarterTurn3Bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4877,7 +4877,7 @@ namespace HybridRC } static void TrackBankedLeftQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4892,7 +4892,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 1), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4901,19 +4901,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 7), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 14), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 20), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4935,25 +4935,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 2), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 8), 0, 0, 48, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 15), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 21), 0, 0, 32, 14, 3, height, 0, 18, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4970,7 +4970,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 3), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4979,19 +4979,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 10), 0, 0, 16, 16, 1, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 16), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 22), 0, 0, 38, 38, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5014,25 +5014,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 4), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 11), 0, 0, 16, 48, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 17), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 23), 0, 0, 14, 32, 3, height, 18, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5049,7 +5049,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 5), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5058,7 +5058,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 13), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5067,13 +5067,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 19), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_MEDIUM_CURVE_BANKED + 24), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5092,7 +5092,7 @@ namespace HybridRC } static void TrackBankedRightQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -5100,7 +5100,7 @@ namespace HybridRC } static void TrackLeftEighthBankToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5115,7 +5115,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 1), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5124,19 +5124,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 6), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 12), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 16), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5153,7 +5153,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 2), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5162,19 +5162,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 8), 0, 0, 34, 16, 0, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 13), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 17), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5187,25 +5187,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 3), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 9), 0, 0, 16, 16, 0, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 14), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 18), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5215,16 +5215,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5264,7 +5264,7 @@ namespace HybridRC } static void TrackRightEighthBankToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5276,13 +5276,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 20), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 24), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5291,7 +5291,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 29), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5300,7 +5300,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 36), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5317,13 +5317,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 21), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 25), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5332,13 +5332,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 31), 0, 0, 34, 16, 0, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 37), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5351,25 +5351,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 22), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 26), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 32), 0, 0, 28, 28, 0, height, 4, 4, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_CURVE_BANKED + 38), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5379,16 +5379,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); @@ -5429,7 +5429,7 @@ namespace HybridRC } static void TrackLeftEighthBankToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5437,7 +5437,7 @@ namespace HybridRC } static void TrackRightEighthBankToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5445,7 +5445,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5457,25 +5457,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 0), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 2), 0, 6, 34, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 4), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 6), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5492,16 +5492,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5516,25 +5516,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 1), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 3), 6, 0, 20, 34, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 5), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 7), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5553,7 +5553,7 @@ namespace HybridRC } static void TrackRightQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5565,25 +5565,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 8), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 10), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 12), 0, 6, 34, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 14), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5600,16 +5600,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5624,25 +5624,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 9), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 11), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 13), 6, 0, 20, 34, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE + 15), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5661,7 +5661,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5669,7 +5669,7 @@ namespace HybridRC } static void TrackRightQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5677,7 +5677,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn5Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5689,25 +5689,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 5), 0, 0, 34, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 10), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 15), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5729,25 +5729,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 1), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 6), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 11), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 16), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5764,25 +5764,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 2), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 7), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 12), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 17), 0, 0, 16, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5805,25 +5805,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 3), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 8), 0, 0, 16, 32, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 13), 0, 0, 16, 32, 3, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 18), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5840,25 +5840,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 4), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 9), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 14), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 19), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5877,7 +5877,7 @@ namespace HybridRC } static void TrackRightQuarterTurn5Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5889,25 +5889,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 20), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 25), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 30), 0, 0, 34, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 35), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5929,25 +5929,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 21), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 26), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 31), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 36), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5964,25 +5964,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 22), 0, 0, 16, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 27), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 32), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 37), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6005,25 +6005,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 23), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 28), 0, 0, 16, 32, 3, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 33), 0, 0, 16, 32, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 38), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6040,25 +6040,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 24), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 29), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 34), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE + 39), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -6077,7 +6077,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn5Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -6085,7 +6085,7 @@ namespace HybridRC } static void TrackRightQuarterTurn5Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -6093,7 +6093,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn1Tile60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6105,7 +6105,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 1), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6114,7 +6114,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 3), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6123,7 +6123,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 5), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6132,7 +6132,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 7), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -6141,7 +6141,7 @@ namespace HybridRC } static void TrackRightQuarterTurn1Tile60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6153,7 +6153,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 9), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6162,7 +6162,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 11), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6171,7 +6171,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 13), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6180,7 +6180,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_STEEP_SMALL_CURVE + 15), 0, 0, 28, 28, 1, height, 2, 2, height + 99); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } track_paint_util_right_quarter_turn_1_tile_tunnel( @@ -6190,21 +6190,21 @@ namespace HybridRC } static void TrackLeftQuarterTurn1Tile60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightQuarterTurn1Tile60DegUp(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); } static void TrackRightQuarterTurn1Tile60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftQuarterTurn1Tile60DegUp(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); } static void TrackLeftQuarterTurn1Tile90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6249,7 +6249,7 @@ namespace HybridRC } static void TrackRightQuarterTurn1Tile90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6294,21 +6294,21 @@ namespace HybridRC } static void TrackLeftQuarterTurn1Tile90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightQuarterTurn1Tile90DegUp(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); } static void TrackRightQuarterTurn1Tile90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftQuarterTurn1Tile90DegUp(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); } static void Track25DegUpToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6337,7 +6337,7 @@ namespace HybridRC 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6351,7 +6351,7 @@ namespace HybridRC } static void Track25DegUpToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6380,7 +6380,7 @@ namespace HybridRC 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6394,7 +6394,7 @@ namespace HybridRC } static void TrackLeftBanked25DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6423,7 +6423,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6437,7 +6437,7 @@ namespace HybridRC } static void TrackRightBanked25DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6466,7 +6466,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6480,35 +6480,35 @@ namespace HybridRC } static void TrackLeftBanked25DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankedFlatToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6540,7 +6540,7 @@ namespace HybridRC 20, 3, height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6554,7 +6554,7 @@ namespace HybridRC } static void TrackRightBankedFlatToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6586,7 +6586,7 @@ namespace HybridRC 20, 3, height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6600,7 +6600,7 @@ namespace HybridRC } static void TrackLeftBanked25DegUpToLeftBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6632,7 +6632,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -6646,7 +6646,7 @@ namespace HybridRC } static void TrackRightBanked25DegUpToRightBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6678,7 +6678,7 @@ namespace HybridRC 34, height, 0, 27, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -6692,35 +6692,35 @@ namespace HybridRC } static void TrackLeftBankedFlatToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpToRightBankedFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankedFlatToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpToLeftBankedFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBanked25DegDownToLeftBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBankedFlatToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownToRightBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBankedFlatToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegUpLeftBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6746,7 +6746,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6760,7 +6760,7 @@ namespace HybridRC } static void Track25DegUpRightBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6786,7 +6786,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -6800,21 +6800,21 @@ namespace HybridRC } static void Track25DegDownLeftBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpRightBanked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownRightBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpLeftBanked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6843,7 +6843,7 @@ namespace HybridRC 20, 3, height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6857,7 +6857,7 @@ namespace HybridRC } static void TrackFlatToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6886,7 +6886,7 @@ namespace HybridRC 20, 3, height, 0, 6, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6900,7 +6900,7 @@ namespace HybridRC } static void TrackLeftBanked25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6929,7 +6929,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -6943,7 +6943,7 @@ namespace HybridRC } static void TrackRightBanked25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6972,7 +6972,7 @@ namespace HybridRC 20, 2, height, 0, 6, height + 3); break; } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -6986,35 +6986,35 @@ namespace HybridRC } static void TrackFlatToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBanked25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankedQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7026,7 +7026,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 0), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7035,19 +7035,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 3), 0, 6, 34, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 6), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 9), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7064,16 +7064,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7088,7 +7088,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 1), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7097,7 +7097,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 5), 6, 0, 1, 34, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7106,13 +7106,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 8), 6, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 10), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7131,7 +7131,7 @@ namespace HybridRC } static void TrackRightBankedQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7143,13 +7143,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 11), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 13), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7158,13 +7158,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 17), 0, 6, 34, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 20), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7181,16 +7181,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7205,7 +7205,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 12), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7214,7 +7214,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 15), 6, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7223,13 +7223,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 19), 6, 0, 1, 34, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_SMALL_CURVE_BANKED + 21), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7248,7 +7248,7 @@ namespace HybridRC } static void TrackLeftBankedQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7256,7 +7256,7 @@ namespace HybridRC } static void TrackRightBankedQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7264,7 +7264,7 @@ namespace HybridRC } static void TrackLeftBankedQuarterTurn5Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7276,7 +7276,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7285,19 +7285,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 6), 0, 0, 34, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 15), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 21), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7319,7 +7319,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 1), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7328,19 +7328,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 8), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 16), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 22), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7357,7 +7357,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 2), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7366,19 +7366,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 10), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 17), 0, 0, 1, 1, 3, height, 64, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 23), 0, 0, 16, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7401,7 +7401,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 3), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7410,19 +7410,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 12), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 18), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 24), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7439,7 +7439,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 4), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7448,7 +7448,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 14), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7457,13 +7457,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 20), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 25), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7482,7 +7482,7 @@ namespace HybridRC } static void TrackRightBankedQuarterTurn5Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7494,13 +7494,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 26), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 31), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7509,13 +7509,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 38), 0, 0, 34, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 47), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7537,13 +7537,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 27), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 32), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7552,13 +7552,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 40), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 48), 0, 0, 32, 16, 3, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7575,13 +7575,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 28), 0, 0, 16, 16, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 33), 0, 0, 1, 1, 3, height, 64, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7590,13 +7590,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 42), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 49), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7619,13 +7619,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 29), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 34), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7634,13 +7634,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 44), 0, 0, 1, 1, 34, height, 30, 30, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 50), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7657,7 +7657,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 30), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7666,7 +7666,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 36), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7675,13 +7675,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 46), 0, 0, 1, 32, 34, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 51), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7700,7 +7700,7 @@ namespace HybridRC } static void TrackLeftBankedQuarterTurn5Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -7708,7 +7708,7 @@ namespace HybridRC } static void TrackRightBankedQuarterTurn5Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -7716,7 +7716,7 @@ namespace HybridRC } static void TrackSBendLeft( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7728,25 +7728,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 4), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 3), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 7), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7763,25 +7763,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 1), 0, 0, 32, 26, 3, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 5), 0, 0, 34, 26, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 2), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 6), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7798,25 +7798,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 2), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 6), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 1), 0, 0, 32, 26, 3, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 5), 0, 0, 34, 26, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7833,25 +7833,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 3), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 7), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 0), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 4), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7870,7 +7870,7 @@ namespace HybridRC } static void TrackSBendRight( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7882,25 +7882,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 8), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 12), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 11), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 15), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7917,25 +7917,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 9), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 13), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 10), 0, 0, 34, 26, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 14), 0, 0, 32, 26, 3, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7952,25 +7952,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 10), 0, 0, 34, 26, 3, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 14), 0, 0, 32, 26, 3, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 9), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 13), 0, 0, 32, 26, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7987,25 +7987,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 11), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 15), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 8), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_S_BEND + 12), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8024,7 +8024,7 @@ namespace HybridRC } static void TrackLeftHalfBankedHelixUpSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8039,7 +8039,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 1), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8048,19 +8048,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 5), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 9), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 13), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8074,16 +8074,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -8095,25 +8095,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 2), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 6), 0, 0, 16, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 10), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 14), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8128,7 +8128,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 3), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8137,7 +8137,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 8), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8146,13 +8146,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 12), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 15), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8174,7 +8174,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 13), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8183,7 +8183,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 1), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8192,13 +8192,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 5), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 9), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8217,16 +8217,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -8238,25 +8238,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 14), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 2), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 6), 0, 0, 16, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 10), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8271,13 +8271,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 15), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 3), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8286,7 +8286,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 8), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -8295,7 +8295,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 12), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8309,7 +8309,7 @@ namespace HybridRC } static void TrackRightHalfBankedHelixUpSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8321,13 +8321,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 16), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 19), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8336,7 +8336,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 24), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -8345,7 +8345,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 29), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8359,16 +8359,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -8380,25 +8380,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 17), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 20), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 25), 0, 0, 16, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 30), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8413,7 +8413,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 18), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8422,7 +8422,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 22), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8431,13 +8431,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 27), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 31), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8459,7 +8459,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 19), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8468,7 +8468,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 24), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8477,13 +8477,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 29), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 16), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8502,16 +8502,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -8523,25 +8523,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 20), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 25), 0, 0, 16, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 30), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 17), 0, 0, 16, 16, 3, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8559,7 +8559,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 22), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8568,19 +8568,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 27), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 31), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_SMALL_HELIX + 18), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8594,7 +8594,7 @@ namespace HybridRC } static void TrackLeftHalfBankedHelixDownSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -8607,7 +8607,7 @@ namespace HybridRC } static void TrackRightHalfBankedHelixDownSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -8620,7 +8620,7 @@ namespace HybridRC } static void TrackLeftHalfBankedHelixUpLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8635,7 +8635,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 1), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8644,19 +8644,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 7), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 14), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 20), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8678,25 +8678,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 2), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 8), 0, 0, 33, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 15), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 21), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8713,7 +8713,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 3), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8722,19 +8722,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 10), 0, 0, 16, 16, 1, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 16), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 22), 0, 0, 34, 34, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8757,25 +8757,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 4), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 11), 0, 0, 16, 33, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 17), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 23), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8792,7 +8792,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 5), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8801,7 +8801,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 13), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8810,13 +8810,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 19), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 24), 0, 0, 28, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8838,7 +8838,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 20), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -8847,7 +8847,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 1), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8856,13 +8856,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 7), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 14), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8889,25 +8889,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 21), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 2), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 8), 0, 0, 16, 32, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 15), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8924,13 +8924,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 22), 0, 0, 16, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 3), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8939,13 +8939,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 10), 0, 0, 16, 16, 1, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 16), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8968,25 +8968,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 23), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 4), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 11), 0, 0, 32, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 17), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9003,13 +9003,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 24), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 5), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9018,7 +9018,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 13), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -9027,7 +9027,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 19), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9041,7 +9041,7 @@ namespace HybridRC } static void TrackRightHalfBankedHelixUpLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9053,13 +9053,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 25), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 30), 0, 0, 32, 32, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9068,7 +9068,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 37), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -9077,7 +9077,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 45), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9099,25 +9099,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 26), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 31), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 38), 0, 0, 33, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 46), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9134,13 +9134,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 27), 0, 0, 34, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 32), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9149,13 +9149,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 40), 0, 0, 16, 16, 1, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 47), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9178,25 +9178,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 28), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 33), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 41), 0, 0, 16, 33, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 48), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9213,7 +9213,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 29), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -9222,7 +9222,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 35), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9231,13 +9231,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 43), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 49), 0, 0, 32, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9259,7 +9259,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 30), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -9268,7 +9268,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 37), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9277,13 +9277,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 45), 0, 0, 1, 32, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 25), 0, 0, 20, 32, 3, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9310,25 +9310,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 31), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 38), 0, 0, 16, 32, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 46), 0, 0, 16, 32, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 26), 0, 0, 16, 32, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9345,7 +9345,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 32), 0, 0, 16, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -9354,19 +9354,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 40), 0, 0, 16, 16, 1, height, 16, 16, height + 28); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 47), 0, 0, 16, 16, 3, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 27), 0, 0, 16, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9389,25 +9389,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 33), 0, 0, 32, 16, 3, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 41), 0, 0, 32, 16, 1, height, 0, 0, height + 28); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 48), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 28), 0, 0, 32, 16, 3, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9427,7 +9427,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 35), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -9436,19 +9436,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 43), 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 49), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_LARGE_HELIX + 29), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9462,7 +9462,7 @@ namespace HybridRC } static void TrackLeftHalfBankedHelixDownLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -9475,7 +9475,7 @@ namespace HybridRC } static void TrackRightHalfBankedHelixDownLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -9488,7 +9488,7 @@ namespace HybridRC } static void TrackLeftBarrelRollUpToDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9529,7 +9529,7 @@ namespace HybridRC 0, height, 0, 6, height + 40); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -9573,7 +9573,7 @@ namespace HybridRC 0, height, 0, 6, height + 40); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -9622,7 +9622,7 @@ namespace HybridRC paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_INVERTED_9); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -9630,7 +9630,7 @@ namespace HybridRC } static void TrackRightBarrelRollUpToDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9671,7 +9671,7 @@ namespace HybridRC 0, height, 0, 6, height + 40); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -9715,7 +9715,7 @@ namespace HybridRC 0, height, 0, 6, height + 40); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -9755,7 +9755,7 @@ namespace HybridRC 0, height, 0, 6, height + 56); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -9772,21 +9772,21 @@ namespace HybridRC } static void TrackLeftBarrelRollDownToUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBarrelRollUpToDown(session, ride, 2 - trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBarrelRollDownToUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBarrelRollUpToDown(session, ride, 2 - trackSequence, (direction + 2) & 3, height, trackElement); } static void Track90DegToInvertedFlatQuarterLoopUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9866,7 +9866,7 @@ namespace HybridRC 64, height, 0, 32, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 64, 0x20); break; @@ -9906,7 +9906,7 @@ namespace HybridRC 32, height, 0, 32, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 16, TUNNEL_0); @@ -9918,27 +9918,27 @@ namespace HybridRC } static void TrackInvertedFlatTo90DegQuarterLoopDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track90DegToInvertedFlatQuarterLoopUp(session, ride, 2 - trackSequence, direction, height, trackElement); } static void Trackbrakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_BRAKE + (direction & 1)), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void TrackOnRidePhoto( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); @@ -9946,14 +9946,14 @@ namespace HybridRC session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT + (direction & 1)), 0, 0, 32, 20, 0, height, 0, 6, height + 3); track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); } static void TrackFlatTo60DegUpLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9983,7 +9983,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 50 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 50 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -10016,7 +10016,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 54 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 54 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -10045,7 +10045,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 58 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 58 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 64, 0x20); break; @@ -10058,12 +10058,12 @@ namespace HybridRC 3, height, 0, 6, height); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT_TO_STEEP + 7), 0, 0, 2, 24, 56, height, 28, 4, height - 16); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT_TO_STEEP + 11), 0, 0, 2, 24, 56, height, 28, 4, height - 16); break; @@ -10074,7 +10074,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 62 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 62 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -10091,7 +10091,7 @@ namespace HybridRC } static void Track60DegUpToFlatLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10105,12 +10105,12 @@ namespace HybridRC 20, 3, height, 0, 6, height); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT_TO_STEEP + 20), 0, 0, 2, 24, 56, height, 28, 4, height - 16); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_FLAT_TO_STEEP + 24), 0, 0, 2, 24, 56, height, 28, 4, height - 16); break; @@ -10121,7 +10121,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 66 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 66 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_7); @@ -10154,7 +10154,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 70 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 70 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 80, 0x20); break; @@ -10183,7 +10183,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 74 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 74 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 56, 0x20); break; @@ -10212,7 +10212,7 @@ namespace HybridRC break; } wooden_a_supports_paint_setup( - session, direction & 1, 78 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction & 1, 78 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -10229,53 +10229,53 @@ namespace HybridRC } static void TrackFlatTo60DegDownLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpToFlatLongBase(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDownToFlatLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatTo60DegUpLongBase(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackBlockBrakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_BLOCK_BRAKE + (direction & 1)), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void Trackbooster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_BOOSTER + (direction & 1)), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void Trackpowered_lift( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_POWERED_LIFT + direction), 0, 0, 32, 20, 3, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -10289,7 +10289,7 @@ namespace HybridRC } static void TrackLeftBankToLeftQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10301,7 +10301,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 0), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -10310,19 +10310,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 3), 0, 6, 34, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 5), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 7), 0, 6, 32, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -10339,16 +10339,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10363,25 +10363,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 1), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 4), 6, 0, 20, 34, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 6), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 8), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -10400,7 +10400,7 @@ namespace HybridRC } static void TrackRightBankToRightQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10412,13 +10412,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 9), 0, 6, 32, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 11), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10427,13 +10427,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 14), 0, 6, 34, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 16), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -10450,16 +10450,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10474,25 +10474,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 10), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 12), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 15), 6, 0, 20, 34, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 17), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -10511,7 +10511,7 @@ namespace HybridRC } static void TrackLeftQuarterTurn3Tile25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10523,25 +10523,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 12), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 15), 0, 6, 34, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 17), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 10), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -10558,16 +10558,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10582,7 +10582,7 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 11), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -10591,19 +10591,19 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 14), 6, 0, 1, 34, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 16), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 9), 6, 0, 32, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -10622,7 +10622,7 @@ namespace HybridRC } static void TrackRightQuarterTurn3Tile25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10634,25 +10634,25 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 8), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 1), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 4), 0, 6, 34, 20, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 6), 0, 6, 32, 20, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -10669,16 +10669,16 @@ namespace HybridRC switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10693,13 +10693,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 7), 6, 0, 32, 32, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 0), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10708,13 +10708,13 @@ namespace HybridRC PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 3), 6, 0, 1, 34, 26, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, GetTrackColour(session) | (SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 5), 6, 0, 20, 32, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) diff --git a/src/openrct2/ride/coaster/InvertedHairpinCoaster.cpp b/src/openrct2/ride/coaster/InvertedHairpinCoaster.cpp index dc8f94607e..1b3d3b2c81 100644 --- a/src/openrct2/ride/coaster/InvertedHairpinCoaster.cpp +++ b/src/openrct2/ride/coaster/InvertedHairpinCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x00890CB4 */ static void inverted_hairpin_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -29,22 +29,22 @@ static void inverted_hairpin_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17030, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17030, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17031, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17031, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17032, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17032, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17033, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17033, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -56,13 +56,13 @@ static void inverted_hairpin_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17026, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17026, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17027, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17027, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -70,10 +70,10 @@ static void inverted_hairpin_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -82,7 +82,7 @@ static void inverted_hairpin_rc_track_flat( /** rct2: 0x00890D84, 0x00890D94, 0x00890DA4 */ static void inverted_hairpin_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -93,14 +93,14 @@ static void inverted_hairpin_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 6, height + 24); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -109,7 +109,7 @@ static void inverted_hairpin_rc_track_station( /** rct2: 0x00890CC4 */ static void inverted_hairpin_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -118,22 +118,22 @@ static void inverted_hairpin_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17070, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17070, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17071, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17071, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17072, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17072, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17073, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17073, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -144,22 +144,22 @@ static void inverted_hairpin_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17042, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17042, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17043, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17043, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17044, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17044, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17045, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17045, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -167,25 +167,25 @@ static void inverted_hairpin_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -203,7 +203,7 @@ static void inverted_hairpin_rc_track_25_deg_up( /** rct2: 0x00890CD4 */ static void inverted_hairpin_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -212,22 +212,22 @@ static void inverted_hairpin_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17086, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17086, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17087, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17087, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17088, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17088, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17089, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17089, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; } @@ -238,22 +238,22 @@ static void inverted_hairpin_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17058, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17058, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17059, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17059, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17060, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17060, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17061, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17061, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; } @@ -273,7 +273,7 @@ static void inverted_hairpin_rc_track_60_deg_up( /** rct2: 0x00890CE4 */ static void inverted_hairpin_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -282,22 +282,22 @@ static void inverted_hairpin_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17062, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17062, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17063, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17063, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17064, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17064, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17065, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17065, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -308,22 +308,22 @@ static void inverted_hairpin_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17034, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17034, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17035, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17035, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17036, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17036, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17037, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17037, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -331,25 +331,25 @@ static void inverted_hairpin_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -367,7 +367,7 @@ static void inverted_hairpin_rc_track_flat_to_25_deg_up( /** rct2: 0x00890CF4 */ static void inverted_hairpin_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -376,28 +376,28 @@ static void inverted_hairpin_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17074, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17074, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17078, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17078, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17075, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17075, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17079, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17079, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17076, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17076, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17077, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17077, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -408,28 +408,28 @@ static void inverted_hairpin_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17046, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17046, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17050, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17050, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17047, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17047, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17051, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17051, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17048, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17048, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17049, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17049, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -449,7 +449,7 @@ static void inverted_hairpin_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x00890D04 */ static void inverted_hairpin_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -458,28 +458,28 @@ static void inverted_hairpin_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17080, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17080, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17084, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17084, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17081, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17081, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17085, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17085, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17082, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17082, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17083, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17083, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -490,28 +490,28 @@ static void inverted_hairpin_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17052, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17052, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17056, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17056, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17053, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17053, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17057, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17057, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17054, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17054, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17055, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17055, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -519,25 +519,25 @@ static void inverted_hairpin_rc_track_60_deg_up_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -555,7 +555,7 @@ static void inverted_hairpin_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x00890D14 */ static void inverted_hairpin_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -564,22 +564,22 @@ static void inverted_hairpin_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17066, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17066, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17067, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17067, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17068, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17068, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17069, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17069, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -590,22 +590,22 @@ static void inverted_hairpin_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17038, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17038, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17039, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17039, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17040, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17040, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17041, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17041, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -613,25 +613,25 @@ static void inverted_hairpin_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -649,7 +649,7 @@ static void inverted_hairpin_rc_track_25_deg_up_to_flat( /** rct2: 0x00890D24 */ static void inverted_hairpin_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -657,7 +657,7 @@ static void inverted_hairpin_rc_track_25_deg_down( /** rct2: 0x00890D34 */ static void inverted_hairpin_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -665,7 +665,7 @@ static void inverted_hairpin_rc_track_60_deg_down( /** rct2: 0x00890D44 */ static void inverted_hairpin_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -673,7 +673,7 @@ static void inverted_hairpin_rc_track_flat_to_25_deg_down( /** rct2: 0x00890D54 */ static void inverted_hairpin_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -681,7 +681,7 @@ static void inverted_hairpin_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x00890D64 */ static void inverted_hairpin_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -689,7 +689,7 @@ static void inverted_hairpin_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x00890D74 */ static void inverted_hairpin_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -697,7 +697,7 @@ static void inverted_hairpin_rc_track_25_deg_down_to_flat( /** rct2: 0x00890DB4 */ static void inverted_hairpin_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -707,22 +707,22 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17123, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17123, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17126, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17126, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17129, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17129, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17120, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17120, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -731,7 +731,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -747,22 +747,22 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17122, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17122, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17125, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17125, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17128, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17128, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17119, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 17119, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -775,22 +775,22 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17121, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17121, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17124, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17124, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17127, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17127, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17118, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17118, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -799,7 +799,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -817,7 +817,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3( /** rct2: 0x00890DC4 */ static void inverted_hairpin_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -826,7 +826,7 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3( /** rct2: 0x00890DD4 */ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -836,19 +836,19 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17141, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17141, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17143, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17143, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17145, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17145, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17139, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17139, 0, 6, 32, 20, 3, height + 24); break; } @@ -856,7 +856,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -875,19 +875,19 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17140, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17140, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17142, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17142, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17144, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17144, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17138, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17138, 6, 0, 20, 32, 3, height + 24); break; } @@ -895,7 +895,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -913,7 +913,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x00890DE4 */ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -923,19 +923,19 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17130, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17130, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17132, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17132, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17134, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17134, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17136, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17136, 0, 6, 32, 20, 3, height + 24); break; } @@ -943,7 +943,7 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -962,19 +962,19 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17131, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17131, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17133, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17133, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17135, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17135, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17137, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 17137, 6, 0, 20, 32, 3, height + 24); break; } @@ -982,7 +982,7 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1000,7 +1000,7 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x00890DF4 */ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1010,7 +1010,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x00890E04 */ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1020,29 +1020,29 @@ static void inverted_hairpin_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x00890E64 */ static void inverted_hairpin_rc_track_left_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17114, 0, 0, 26, 24, 3, height + 24, 6, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 17114, 0, 0, 26, 24, 3, height + 24, 6, 2, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17115, 0, 0, 26, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 17115, 0, 0, 26, 26, 3, height + 24, 0, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17116, 0, 0, 24, 26, 3, height + 24, 2, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17116, 0, 0, 24, 26, 3, height + 24, 2, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17117, 0, 0, 24, 24, 3, height + 24, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17117, 0, 0, 24, 24, 3, height + 24, 6, 6, height + 24); break; } @@ -1050,7 +1050,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_1( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1070,7 +1070,7 @@ static void inverted_hairpin_rc_track_left_quarter_turn_1( /** rct2: 0x00890E74 */ static void inverted_hairpin_rc_track_right_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_left_quarter_turn_1(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -1078,7 +1078,7 @@ static void inverted_hairpin_rc_track_right_quarter_turn_1( /** rct2: 0x00890E24 */ static void inverted_hairpin_rc_track_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -1087,28 +1087,28 @@ static void inverted_hairpin_rc_track_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17102, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17102, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17106, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17106, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17103, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17103, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17107, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17107, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17104, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17104, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17105, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17105, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -1119,28 +1119,28 @@ static void inverted_hairpin_rc_track_flat_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17090, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17090, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17094, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17094, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17091, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17091, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17095, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17095, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17092, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17092, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17093, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17093, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -1160,7 +1160,7 @@ static void inverted_hairpin_rc_track_flat_to_60_deg_up( /** rct2: 0x00890E34 */ static void inverted_hairpin_rc_track_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -1169,28 +1169,28 @@ static void inverted_hairpin_rc_track_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17108, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17108, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 48); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17112, 0, 0, 32, 10, 41, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17112, 0, 0, 32, 10, 41, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17109, 0, 0, 32, 2, 41, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17109, 0, 0, 32, 2, 41, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17113, 0, 0, 32, 10, 41, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17113, 0, 0, 32, 10, 41, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17110, 0, 0, 32, 2, 41, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17110, 0, 0, 32, 2, 41, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17111, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17111, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 48); break; } @@ -1201,28 +1201,28 @@ static void inverted_hairpin_rc_track_60_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17096, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17096, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 48); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17100, 0, 0, 32, 10, 41, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17100, 0, 0, 32, 10, 41, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17097, 0, 0, 32, 2, 41, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17097, 0, 0, 32, 2, 41, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17101, 0, 0, 32, 10, 41, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 17101, 0, 0, 32, 10, 41, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17098, 0, 0, 32, 2, 41, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 17098, 0, 0, 32, 2, 41, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17099, 0, 0, 30, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17099, 0, 0, 30, 20, 3, height + 24, 0, 6, height + 48); break; } @@ -1234,19 +1234,19 @@ static void inverted_hairpin_rc_track_60_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1263,7 +1263,7 @@ static void inverted_hairpin_rc_track_60_deg_up_to_flat( /** rct2: 0x00890E44 */ static void inverted_hairpin_rc_track_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_60_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1271,7 +1271,7 @@ static void inverted_hairpin_rc_track_flat_to_60_deg_down( /** rct2: 0x00890E54 */ static void inverted_hairpin_rc_track_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_hairpin_rc_track_flat_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1279,7 +1279,7 @@ static void inverted_hairpin_rc_track_60_deg_down_to_flat( /** rct2: 0x00890E14 */ static void inverted_hairpin_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1287,23 +1287,23 @@ static void inverted_hairpin_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17028, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17028, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17029, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17029, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1312,7 +1312,7 @@ static void inverted_hairpin_rc_track_brakes( /** rct2: 0x00890E84 */ static void inverted_hairpin_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1320,23 +1320,23 @@ static void inverted_hairpin_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17028, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17028, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 17029, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 17029, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); diff --git a/src/openrct2/ride/coaster/InvertedImpulseCoaster.cpp b/src/openrct2/ride/coaster/InvertedImpulseCoaster.cpp index 3eeb5bb04c..1d858866f2 100644 --- a/src/openrct2/ride/coaster/InvertedImpulseCoaster.cpp +++ b/src/openrct2/ride/coaster/InvertedImpulseCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008B0460 */ static void inverted_impulse_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -28,23 +28,23 @@ static void inverted_impulse_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19662, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19662, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19663, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19663, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -53,7 +53,7 @@ static void inverted_impulse_rc_track_flat( /** rct2: 0x008B0470, 0x008B0480, 0x008B0490 */ static void inverted_impulse_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -64,14 +64,14 @@ static void inverted_impulse_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -80,54 +80,54 @@ static void inverted_impulse_rc_track_station( /** rct2: 0x008B04A0 */ static void inverted_impulse_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19672, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19672, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19673, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19673, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19674, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19674, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19675, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19675, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -145,29 +145,29 @@ static void inverted_impulse_rc_track_25_deg_up( /** rct2: 0x008B04B0 */ static void inverted_impulse_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19688, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19688, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19689, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19689, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19690, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19690, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19691, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19691, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; } @@ -186,29 +186,29 @@ static void inverted_impulse_rc_track_60_deg_up( /** rct2: 0x008B04C0 */ static void inverted_impulse_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19664, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19664, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19665, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19665, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19666, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19666, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19667, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19667, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -219,19 +219,19 @@ static void inverted_impulse_rc_track_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -248,35 +248,35 @@ static void inverted_impulse_rc_track_flat_to_25_deg_up( /** rct2: 0x008B04D0 */ static void inverted_impulse_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19676, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19676, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19680, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 19680, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19677, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19677, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19681, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 19681, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19678, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19678, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19679, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19679, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -295,35 +295,35 @@ static void inverted_impulse_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008B04E0 */ static void inverted_impulse_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19682, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19682, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19686, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 19686, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19683, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19683, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19687, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 19687, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19684, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19684, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19685, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19685, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -342,29 +342,29 @@ static void inverted_impulse_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008B04F0 */ static void inverted_impulse_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19668, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19668, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19669, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19669, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19670, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19670, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19671, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19671, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -375,19 +375,19 @@ static void inverted_impulse_rc_track_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -404,7 +404,7 @@ static void inverted_impulse_rc_track_25_deg_up_to_flat( /** rct2: 0x008B0500 */ static void inverted_impulse_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -412,7 +412,7 @@ static void inverted_impulse_rc_track_25_deg_down( /** rct2: 0x008B0510 */ static void inverted_impulse_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -420,7 +420,7 @@ static void inverted_impulse_rc_track_60_deg_down( /** rct2: 0x008B0520 */ static void inverted_impulse_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -428,7 +428,7 @@ static void inverted_impulse_rc_track_flat_to_25_deg_down( /** rct2: 0x008B0530 */ static void inverted_impulse_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -436,7 +436,7 @@ static void inverted_impulse_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008B0540 */ static void inverted_impulse_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -444,7 +444,7 @@ static void inverted_impulse_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008B0550 */ static void inverted_impulse_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -452,7 +452,7 @@ static void inverted_impulse_rc_track_25_deg_down_to_flat( /** rct2: 0x008B05A0 */ static void inverted_impulse_rc_track_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -462,22 +462,22 @@ static void inverted_impulse_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19700, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19700, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19701, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19701, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19702, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19702, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19703, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19703, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -493,7 +493,7 @@ static void inverted_impulse_rc_track_90_deg_up( /** rct2: 0x008B05B0 */ static void inverted_impulse_rc_track_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -501,7 +501,7 @@ static void inverted_impulse_rc_track_90_deg_down( /** rct2: 0x008B0560 */ static void inverted_impulse_rc_track_60_deg_up_to_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -511,22 +511,22 @@ static void inverted_impulse_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19692, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19692, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19693, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19693, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19694, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19694, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19695, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19695, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -546,7 +546,7 @@ static void inverted_impulse_rc_track_60_deg_up_to_90_deg_up( /** rct2: 0x008B0570 */ static void inverted_impulse_rc_track_90_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_60_deg_up_to_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -554,29 +554,29 @@ static void inverted_impulse_rc_track_90_deg_down_to_60_deg_down( /** rct2: 0x008B0580 */ static void inverted_impulse_rc_track_90_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19696, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19696, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19697, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19697, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19698, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19698, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19699, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19699, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; } @@ -596,7 +596,7 @@ static void inverted_impulse_rc_track_90_deg_up_to_60_deg_up( /** rct2: 0x008B0590 */ static void inverted_impulse_rc_track_60_deg_down_to_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -606,22 +606,22 @@ static void inverted_impulse_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19698, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19698, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19699, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19699, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19696, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19696, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 85); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19697, 0, 0, 32, 2, 55, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19697, 0, 0, 32, 2, 55, height + 29, 0, 4, height + 11); break; } @@ -640,7 +640,7 @@ static void inverted_impulse_rc_track_60_deg_down_to_90_deg_down( /** rct2: 0x008B05C0 */ static void inverted_impulse_rc_track_left_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -650,31 +650,31 @@ static void inverted_impulse_rc_track_left_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19708, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19708, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19709, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19709, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19717, 0, 0, 2, 32, 31, height + 29, 4, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19717, 0, 0, 2, 32, 31, height + 29, 4, 0, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19710, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19710, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19718, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19718, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19711, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19711, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19719, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19719, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; } @@ -690,7 +690,7 @@ static void inverted_impulse_rc_track_left_quarter_turn_1_90_deg_up( /** rct2: 0x008B05D0 */ static void inverted_impulse_rc_track_right_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -700,31 +700,31 @@ static void inverted_impulse_rc_track_right_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19704, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19704, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19712, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19712, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19705, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19705, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19713, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19713, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19706, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19706, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19714, 0, 0, 32, 2, 31, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19714, 0, 0, 32, 2, 31, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19707, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 19707, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 125); break; } @@ -740,7 +740,7 @@ static void inverted_impulse_rc_track_right_quarter_turn_1_90_deg_up( /** rct2: 0x008B05E0 */ static void inverted_impulse_rc_track_left_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_right_quarter_turn_1_90_deg_up( @@ -749,7 +749,7 @@ static void inverted_impulse_rc_track_left_quarter_turn_1_90_deg_down( /** rct2: 0x008B05F0 */ static void inverted_impulse_rc_track_right_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_impulse_rc_track_left_quarter_turn_1_90_deg_up( diff --git a/src/openrct2/ride/coaster/InvertedRollerCoaster.cpp b/src/openrct2/ride/coaster/InvertedRollerCoaster.cpp index b8ab438754..d754d53a37 100644 --- a/src/openrct2/ride/coaster/InvertedRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/InvertedRollerCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008A92E8 */ static void inverted_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -30,13 +30,13 @@ static void inverted_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27131, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27131, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27132, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27132, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -48,13 +48,13 @@ static void inverted_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -62,9 +62,9 @@ static void inverted_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -73,7 +73,7 @@ static void inverted_rc_track_flat( /** rct2: 0x008A9558, 0x008A9568, 0x008A9578 */ static void inverted_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -84,14 +84,14 @@ static void inverted_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 3); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -100,7 +100,7 @@ static void inverted_rc_track_station( /** rct2: 0x008A92F8 */ static void inverted_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -109,22 +109,22 @@ static void inverted_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27249, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27249, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27250, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27250, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27251, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27251, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27252, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27252, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -135,22 +135,22 @@ static void inverted_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27221, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27221, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27222, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27222, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27223, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27223, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27224, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27224, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -158,25 +158,25 @@ static void inverted_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -194,29 +194,29 @@ static void inverted_rc_track_25_deg_up( /** rct2: 0x008A9308 */ static void inverted_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27237, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27237, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27238, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27238, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27239, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27239, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27240, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27240, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; } @@ -235,7 +235,7 @@ static void inverted_rc_track_60_deg_up( /** rct2: 0x008A9318 */ static void inverted_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -244,22 +244,22 @@ static void inverted_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27241, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27241, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27242, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27242, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27243, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27243, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27244, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27244, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -270,22 +270,22 @@ static void inverted_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27213, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27213, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27214, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27214, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27215, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27215, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27216, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27216, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -293,25 +293,25 @@ static void inverted_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -329,35 +329,35 @@ static void inverted_rc_track_flat_to_25_deg_up( /** rct2: 0x008A9328 */ static void inverted_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27225, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27225, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27229, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27229, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27226, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27226, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27230, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27230, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27227, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27227, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27228, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27228, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -376,60 +376,60 @@ static void inverted_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A9338 */ static void inverted_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27231, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27231, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27235, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27235, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27232, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27232, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27236, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 27236, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27233, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27233, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27234, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27234, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -447,7 +447,7 @@ static void inverted_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A9348 */ static void inverted_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -456,22 +456,22 @@ static void inverted_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27245, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27245, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27246, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27246, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27247, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27247, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27248, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27248, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -482,22 +482,22 @@ static void inverted_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27217, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27217, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27218, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27218, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27219, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27219, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27220, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27220, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -505,25 +505,25 @@ static void inverted_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -541,7 +541,7 @@ static void inverted_rc_track_25_deg_up_to_flat( /** rct2: 0x008A9358 */ static void inverted_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -549,7 +549,7 @@ static void inverted_rc_track_25_deg_down( /** rct2: 0x008A9368 */ static void inverted_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -557,7 +557,7 @@ static void inverted_rc_track_60_deg_down( /** rct2: 0x008A9378 */ static void inverted_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -565,7 +565,7 @@ static void inverted_rc_track_flat_to_25_deg_down( /** rct2: 0x008A9388 */ static void inverted_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -573,7 +573,7 @@ static void inverted_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A9398 */ static void inverted_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -581,7 +581,7 @@ static void inverted_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A93A8 */ static void inverted_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -589,7 +589,7 @@ static void inverted_rc_track_25_deg_down_to_flat( /** rct2: 0x008A93B8 */ static void inverted_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -599,22 +599,22 @@ static void inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27142, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27142, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27147, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27147, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27152, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27152, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27137, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27137, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -623,7 +623,7 @@ static void inverted_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -639,20 +639,20 @@ static void inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27141, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27141, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27146, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27146, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27151, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27151, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27136, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27136, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -668,22 +668,22 @@ static void inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27140, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27140, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27145, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27145, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27150, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27150, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27135, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27135, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -698,20 +698,20 @@ static void inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27139, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27139, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27144, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27144, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27149, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27149, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27134, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27134, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; } @@ -727,22 +727,22 @@ static void inverted_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27138, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27138, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27143, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27143, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27148, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27148, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27133, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27133, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -751,7 +751,7 @@ static void inverted_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -769,7 +769,7 @@ static void inverted_rc_track_left_quarter_turn_5( /** rct2: 0x008A93C8 */ static void inverted_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -778,29 +778,29 @@ static void inverted_rc_track_right_quarter_turn_5( /** rct2: 0x008A93D8 */ static void inverted_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -809,9 +809,9 @@ static void inverted_rc_track_flat_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -820,29 +820,29 @@ static void inverted_rc_track_flat_to_left_bank( /** rct2: 0x008A93E8 */ static void inverted_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -851,9 +851,9 @@ static void inverted_rc_track_flat_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -862,29 +862,29 @@ static void inverted_rc_track_flat_to_right_bank( /** rct2: 0x008A93F8 */ static void inverted_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27275, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27276, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27273, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27274, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -893,9 +893,9 @@ static void inverted_rc_track_left_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -904,29 +904,29 @@ static void inverted_rc_track_left_bank_to_flat( /** rct2: 0x008A9408 */ static void inverted_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27271, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27272, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27269, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27270, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -935,9 +935,9 @@ static void inverted_rc_track_right_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -946,7 +946,7 @@ static void inverted_rc_track_right_bank_to_flat( /** rct2: 0x008A9418 */ static void inverted_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -956,22 +956,22 @@ static void inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27162, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27162, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27167, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27167, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27172, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27172, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27157, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27157, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -980,7 +980,7 @@ static void inverted_rc_track_banked_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -996,20 +996,20 @@ static void inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27161, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27161, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27166, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27166, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27171, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27171, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27156, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27156, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -1025,22 +1025,22 @@ static void inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27160, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27160, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27165, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27165, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27170, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27170, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27155, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27155, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1055,20 +1055,20 @@ static void inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27159, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27159, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27164, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27164, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27169, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27169, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27154, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27154, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; } @@ -1084,22 +1084,22 @@ static void inverted_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27158, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27158, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27163, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27163, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27168, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27168, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27153, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27153, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -1108,7 +1108,7 @@ static void inverted_rc_track_banked_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1126,7 +1126,7 @@ static void inverted_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008A9428 */ static void inverted_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1135,29 +1135,29 @@ static void inverted_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008A9438 */ static void inverted_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27277, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27277, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27278, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27278, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27279, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27279, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27280, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27280, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1166,25 +1166,25 @@ static void inverted_rc_track_left_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1202,29 +1202,29 @@ static void inverted_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008A9448 */ static void inverted_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27281, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27281, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27282, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27282, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27283, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27283, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27284, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27284, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1233,25 +1233,25 @@ static void inverted_rc_track_right_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1269,29 +1269,29 @@ static void inverted_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008A9458 */ static void inverted_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27285, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27285, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27286, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27286, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27287, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27287, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27288, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27288, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1300,25 +1300,25 @@ static void inverted_rc_track_25_deg_up_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1336,29 +1336,29 @@ static void inverted_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008A9468 */ static void inverted_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27289, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27289, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27290, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27290, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27291, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27291, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27292, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27292, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -1367,25 +1367,25 @@ static void inverted_rc_track_25_deg_up_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1403,7 +1403,7 @@ static void inverted_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008A9478 */ static void inverted_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1411,7 +1411,7 @@ static void inverted_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008A9488 */ static void inverted_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1419,7 +1419,7 @@ static void inverted_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008A9498 */ static void inverted_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1427,7 +1427,7 @@ static void inverted_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008A94A8 */ static void inverted_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1435,29 +1435,29 @@ static void inverted_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008A94B8 */ static void inverted_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27293, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27293, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27294, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27294, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27295, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27295, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27296, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27296, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1466,9 +1466,9 @@ static void inverted_rc_track_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -1477,7 +1477,7 @@ static void inverted_rc_track_left_bank( /** rct2: 0x008A94C8 */ static void inverted_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1485,7 +1485,7 @@ static void inverted_rc_track_right_bank( /** rct2: 0x008A94D8 */ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1495,19 +1495,19 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27317, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27317, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27322, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27322, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27327, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27327, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27332, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27332, 0, 6, 32, 20, 3, height + 29); break; } @@ -1515,7 +1515,7 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1531,19 +1531,19 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27318, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27318, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27323, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27323, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27328, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27328, 0, 16, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27333, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27333, 0, 16, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1558,19 +1558,19 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27319, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27319, 0, 16, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27324, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27324, 16, 16, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27329, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27329, 16, 0, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27334, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27334, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1585,19 +1585,19 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27320, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27320, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27325, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27325, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27330, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27330, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27335, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27335, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1612,19 +1612,19 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27321, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27321, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27326, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27326, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27331, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27331, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27336, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27336, 6, 0, 20, 32, 3, height + 29); break; } @@ -1632,7 +1632,7 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1650,7 +1650,7 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A94E8 */ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1660,19 +1660,19 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27297, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27297, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27302, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27302, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27307, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27307, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27312, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27312, 0, 6, 32, 20, 3, height + 29); break; } @@ -1680,7 +1680,7 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1696,19 +1696,19 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27298, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27298, 0, 16, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27303, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27303, 0, 16, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27308, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27308, 0, 0, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27313, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27313, 0, 0, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1723,19 +1723,19 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27299, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27299, 0, 0, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27304, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27304, 16, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27309, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27309, 16, 16, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27314, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27314, 0, 16, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1750,19 +1750,19 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27300, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27300, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27305, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27305, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27310, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27310, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27315, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27315, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1777,19 +1777,19 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27301, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27301, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27306, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27306, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27311, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27311, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27316, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27316, 6, 0, 20, 32, 3, height + 29); break; } @@ -1797,7 +1797,7 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1815,7 +1815,7 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A94F8 */ static void inverted_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1824,7 +1824,7 @@ static void inverted_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A9508 */ static void inverted_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1833,7 +1833,7 @@ static void inverted_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A9518 */ static void inverted_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1843,22 +1843,22 @@ static void inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1866,7 +1866,7 @@ static void inverted_rc_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1879,20 +1879,20 @@ static void inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; } @@ -1906,11 +1906,11 @@ static void inverted_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1921,21 +1921,21 @@ static void inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27255, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27259, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27254, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27258, 0, 0, 32, 26, 3, height + 29); break; } @@ -1948,11 +1948,11 @@ static void inverted_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1963,22 +1963,22 @@ static void inverted_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27256, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27260, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27253, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27257, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1986,7 +1986,7 @@ static void inverted_rc_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2004,7 +2004,7 @@ static void inverted_rc_track_s_bend_left( /** rct2: 0x008A9528 */ static void inverted_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2014,22 +2014,22 @@ static void inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2037,7 +2037,7 @@ static void inverted_rc_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2050,21 +2050,21 @@ static void inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 29); break; } @@ -2077,11 +2077,11 @@ static void inverted_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2092,20 +2092,20 @@ static void inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27263, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27267, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27262, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27266, 0, 0, 32, 26, 3, height + 29, 0, 6, height + 29); break; } @@ -2119,11 +2119,11 @@ static void inverted_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2134,22 +2134,22 @@ static void inverted_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27264, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27268, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27261, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27265, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2157,7 +2157,7 @@ static void inverted_rc_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2175,7 +2175,7 @@ static void inverted_rc_track_s_bend_right( /** rct2: 0x008A9538 */ static void inverted_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2185,22 +2185,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27355, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27355, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27363, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27363, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27362, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27362, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27370, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27370, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; } @@ -2215,19 +2215,19 @@ static void inverted_rc_track_left_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2242,22 +2242,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27356, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27356, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27364, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27364, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27361, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27361, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27369, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27369, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; } @@ -2269,22 +2269,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27357, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27357, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27365, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27365, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27360, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27360, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27368, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27368, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; } @@ -2297,22 +2297,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27358, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27358, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27366, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27366, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27359, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27359, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27367, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27367, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2334,22 +2334,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27359, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27359, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27367, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27367, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27358, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27358, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27366, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27366, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2365,22 +2365,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27360, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27360, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27368, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27368, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27357, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27357, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27365, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27365, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; } @@ -2393,22 +2393,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27361, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27361, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27369, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27369, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27356, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27356, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27364, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27364, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; } @@ -2420,22 +2420,22 @@ static void inverted_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27362, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27362, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27370, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27370, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27355, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27355, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27363, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27363, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2450,19 +2450,19 @@ static void inverted_rc_track_left_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2482,7 +2482,7 @@ static void inverted_rc_track_left_vertical_loop( /** rct2: 0x008A9548 */ static void inverted_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2492,22 +2492,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27386, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27386, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27378, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27378, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27379, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27379, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27371, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27371, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2522,19 +2522,19 @@ static void inverted_rc_track_right_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2549,22 +2549,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27385, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27385, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27377, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27377, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27380, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27380, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27372, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27372, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2576,22 +2576,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27384, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27384, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27376, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27376, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27381, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27381, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27373, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27373, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; } @@ -2604,22 +2604,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27383, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27383, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27375, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27375, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27382, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27382, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27374, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27374, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2641,22 +2641,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27382, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27382, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27374, 0, 0, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27374, 0, 0, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27383, 0, 16, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27383, 0, 16, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27375, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27375, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; } @@ -2672,22 +2672,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27381, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27381, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27373, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27373, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27384, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27384, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27376, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27376, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; } @@ -2700,22 +2700,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27380, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27380, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27372, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27372, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27385, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27385, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27377, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27377, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; } @@ -2727,22 +2727,22 @@ static void inverted_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27379, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27379, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27371, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27371, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27386, 0, 6, 32, 10, 7, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27386, 0, 6, 32, 10, 7, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27378, 0, 6, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27378, 0, 6, 32, 2, 3, height + 29, 0, 29, height + 29); break; } @@ -2757,19 +2757,19 @@ static void inverted_rc_track_right_vertical_loop( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2789,7 +2789,7 @@ static void inverted_rc_track_right_vertical_loop( /** rct2: 0x008A9588 */ static void inverted_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2799,22 +2799,22 @@ static void inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27392, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27392, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27395, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27395, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27398, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27398, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27389, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27389, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2823,7 +2823,7 @@ static void inverted_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2839,21 +2839,21 @@ static void inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27391, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27391, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27394, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27394, 0, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27397, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27397, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27388, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27388, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -2866,22 +2866,22 @@ static void inverted_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27390, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27390, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27393, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27393, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27396, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27396, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27387, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27387, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -2890,7 +2890,7 @@ static void inverted_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2908,7 +2908,7 @@ static void inverted_rc_track_left_quarter_turn_3( /** rct2: 0x008A9598 */ static void inverted_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2917,7 +2917,7 @@ static void inverted_rc_track_right_quarter_turn_3( /** rct2: 0x008A95A8 */ static void inverted_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2927,22 +2927,22 @@ static void inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27404, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27404, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27407, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27407, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27410, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27410, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27401, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27401, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2951,7 +2951,7 @@ static void inverted_rc_track_left_quarter_turn_3_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2967,22 +2967,22 @@ static void inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27403, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27403, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27406, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27406, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27409, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27409, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27400, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27400, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -2995,22 +2995,22 @@ static void inverted_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27402, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27402, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27405, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27405, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27408, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27408, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27399, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27399, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -3019,7 +3019,7 @@ static void inverted_rc_track_left_quarter_turn_3_bank( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3037,7 +3037,7 @@ static void inverted_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008A95B8 */ static void inverted_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3046,7 +3046,7 @@ static void inverted_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008A95C8 */ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3056,19 +3056,19 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27422, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27422, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27424, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27424, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27426, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27426, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27420, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27420, 0, 6, 32, 20, 3, height + 29); break; } @@ -3076,7 +3076,7 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3095,19 +3095,19 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27421, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27421, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27423, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27423, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27425, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27425, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27419, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27419, 6, 0, 20, 32, 3, height + 29); break; } @@ -3115,7 +3115,7 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3133,7 +3133,7 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A95D8 */ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3143,19 +3143,19 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27411, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27411, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27413, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27413, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27415, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27415, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27417, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27417, 0, 6, 32, 20, 3, height + 29); break; } @@ -3163,7 +3163,7 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3182,19 +3182,19 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27412, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27412, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27414, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27414, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27416, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27416, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27418, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27418, 6, 0, 20, 32, 3, height + 29); break; } @@ -3202,7 +3202,7 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3220,7 +3220,7 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A95E8 */ static void inverted_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3229,7 +3229,7 @@ static void inverted_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A95F8 */ static void inverted_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3238,7 +3238,7 @@ static void inverted_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A9608 */ static void inverted_rc_track_left_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3248,19 +3248,19 @@ static void inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 29); break; } @@ -3270,7 +3270,7 @@ static void inverted_rc_track_left_twist_down_to_up( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3283,19 +3283,19 @@ static void inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3310,22 +3310,22 @@ static void inverted_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3347,7 +3347,7 @@ static void inverted_rc_track_left_twist_down_to_up( /** rct2: 0x008A9618 */ static void inverted_rc_track_right_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3357,19 +3357,19 @@ static void inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 29); break; } @@ -3379,7 +3379,7 @@ static void inverted_rc_track_right_twist_down_to_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3392,19 +3392,19 @@ static void inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3419,22 +3419,22 @@ static void inverted_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3456,7 +3456,7 @@ static void inverted_rc_track_right_twist_down_to_up( /** rct2: 0x008A9628 */ static void inverted_rc_track_left_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3466,22 +3466,22 @@ static void inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27430, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27436, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27429, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27435, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -3498,19 +3498,19 @@ static void inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27431, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27437, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27428, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27434, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3525,19 +3525,19 @@ static void inverted_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27432, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27438, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27427, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27433, 0, 6, 32, 20, 3, height + 29); break; } @@ -3547,7 +3547,7 @@ static void inverted_rc_track_left_twist_up_to_down( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3565,7 +3565,7 @@ static void inverted_rc_track_left_twist_up_to_down( /** rct2: 0x008A9638 */ static void inverted_rc_track_right_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3575,22 +3575,22 @@ static void inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27442, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27448, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27441, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27447, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -3607,19 +3607,19 @@ static void inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27443, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27449, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27440, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27446, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -3634,19 +3634,19 @@ static void inverted_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27444, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27450, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27439, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27445, 0, 6, 32, 20, 3, height + 29); break; } @@ -3656,7 +3656,7 @@ static void inverted_rc_track_right_twist_up_to_down( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3674,7 +3674,7 @@ static void inverted_rc_track_right_twist_up_to_down( /** rct2: 0x008A9648 */ static void inverted_rc_track_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3684,22 +3684,22 @@ static void inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27451, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27451, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27459, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27459, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27458, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27458, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27466, 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27466, 0, 6, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -3710,19 +3710,19 @@ static void inverted_rc_track_half_loop_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3737,22 +3737,22 @@ static void inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27452, 0, 0, 32, 2, 3, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27452, 0, 0, 32, 2, 3, height + 29, 0, 29, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27460, 0, 14, 32, 2, 63, height + 29, 0, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27460, 0, 14, 32, 2, 63, height + 29, 0, 29, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27457, 0, 6, 32, 2, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27457, 0, 6, 32, 2, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27465, 0, 6, 2, 2, 3, height + 29, 29, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | 27465, 0, 6, 2, 2, 3, height + 29, 29, 20, height + 29); break; } @@ -3764,22 +3764,22 @@ static void inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27453, 16, 0, 5, 2, 119, height + 2, 16, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27453, 16, 0, 5, 2, 119, height + 2, 16, 29, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27461, 12, 0, 32, 2, 119, height + 2, 0, -6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27461, 12, 0, 32, 2, 119, height + 2, 0, -6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27456, 10, 16, 4, 2, 119, height + 2, 10, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27456, 10, 16, 4, 2, 119, height + 2, 10, 0, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27464, 16, 16, 2, 2, 119, height + 2, 29, 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27464, 16, 16, 2, 2, 119, height + 2, 29, 29, height + 2); break; } @@ -3795,22 +3795,22 @@ static void inverted_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27454, 0, 0, 32, 20, 3, height + 34, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27454, 0, 0, 32, 20, 3, height + 34, 0, 6, height + 34); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27462, 0, 0, 2, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27462, 0, 0, 2, 2, 3, height + 34, 0, 0, height - 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27455, 0, 16, 32, 2, 3, height + 34, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27455, 0, 16, 32, 2, 3, height + 34, 0, 0, height - 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27463, 0, 16, 32, 20, 3, height + 34, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27463, 0, 16, 32, 20, 3, height + 34, 0, 6, height + 34); break; } @@ -3827,7 +3827,7 @@ static void inverted_rc_track_half_loop_up( /** rct2: 0x008A9658 */ static void inverted_rc_track_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_half_loop_up(session, ride, 3 - trackSequence, direction, height, trackElement); @@ -3835,7 +3835,7 @@ static void inverted_rc_track_half_loop_down( /** rct2: 0x008A9668 */ static void inverted_rc_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3845,22 +3845,22 @@ static void inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27467, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27467, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27470, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27470, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27473, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27473, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27476, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27476, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; } @@ -3871,7 +3871,7 @@ static void inverted_rc_track_left_corkscrew_up( SEGMENT_B4 | SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3884,22 +3884,22 @@ static void inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27468, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27468, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27471, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27471, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27474, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27474, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27477, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27477, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; } @@ -3911,27 +3911,27 @@ static void inverted_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27469, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27469, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27472, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27472, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27475, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27475, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27478, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27478, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3953,7 +3953,7 @@ static void inverted_rc_track_left_corkscrew_up( /** rct2: 0x008A9678 */ static void inverted_rc_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3963,22 +3963,22 @@ static void inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27479, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27479, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27482, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27482, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27485, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27485, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27488, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27488, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 33); break; } @@ -3989,7 +3989,7 @@ static void inverted_rc_track_right_corkscrew_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4002,22 +4002,22 @@ static void inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27480, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27480, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27483, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27483, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27486, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27486, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27489, 0, 0, 20, 20, 3, height + 14, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27489, 0, 0, 20, 20, 3, height + 14, 6, 6, height + 24); break; } @@ -4029,27 +4029,27 @@ static void inverted_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27481, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27481, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27484, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27484, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27487, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27487, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27490, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27490, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 39); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4071,7 +4071,7 @@ static void inverted_rc_track_right_corkscrew_up( /** rct2: 0x008A9688 */ static void inverted_rc_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_corkscrew_up(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); @@ -4079,7 +4079,7 @@ static void inverted_rc_track_left_corkscrew_down( /** rct2: 0x008A9698 */ static void inverted_rc_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_corkscrew_up(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); @@ -4087,34 +4087,34 @@ static void inverted_rc_track_right_corkscrew_down( /** rct2: 0x008A96D8 */ static void inverted_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27352, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27352, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27348, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27348, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27353, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27353, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27349, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27349, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27354, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27354, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27350, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27350, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27351, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27351, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27347, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27347, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_INVERTED_4, +56, TUNNEL_INVERTED_5); @@ -4124,34 +4124,34 @@ static void inverted_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008A96B8 */ static void inverted_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27343, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27343, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27339, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27339, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27344, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27344, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27340, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27340, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27345, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27345, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27341, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27341, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27346, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27346, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27342, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 27342, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel( @@ -4162,7 +4162,7 @@ static void inverted_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008A96C8 */ static void inverted_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -4170,7 +4170,7 @@ static void inverted_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008A96E8 */ static void inverted_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -4178,7 +4178,7 @@ static void inverted_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008A96A8 */ static void inverted_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4186,22 +4186,22 @@ static void inverted_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -4210,7 +4210,7 @@ static void inverted_rc_track_brakes( /** rct2: 0x008A96F8 */ static void inverted_rc_track_left_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4220,22 +4220,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27202, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27202, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27207, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27207, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27212, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27212, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27197, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27197, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -4244,7 +4244,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4260,22 +4260,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27201, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27201, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27206, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27206, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27211, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27211, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27196, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27196, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4291,22 +4291,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4322,22 +4322,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27199, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27199, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27204, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27204, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27209, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27209, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27194, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27194, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4353,22 +4353,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27198, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27198, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27203, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27203, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27208, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27208, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27193, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27193, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -4377,7 +4377,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4395,7 +4395,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_up( /** rct2: 0x008A9708 */ static void inverted_rc_track_right_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4405,22 +4405,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27173, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27173, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27178, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27178, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27183, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27183, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27188, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27188, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -4429,7 +4429,7 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4445,22 +4445,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27174, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27174, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27179, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27179, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27184, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27184, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27189, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27189, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4476,22 +4476,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4507,22 +4507,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27176, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27176, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27181, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27181, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27186, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27186, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27191, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27191, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4538,22 +4538,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27177, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27177, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27182, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27182, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27187, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27187, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27192, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27192, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -4562,7 +4562,7 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4580,7 +4580,7 @@ static void inverted_rc_track_right_quarter_banked_helix_large_up( /** rct2: 0x008A9718 */ static void inverted_rc_track_left_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4590,22 +4590,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27182, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27182, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27187, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27187, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27192, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27192, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27177, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27177, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -4614,7 +4614,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4630,22 +4630,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27181, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27181, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27186, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27186, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27191, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27191, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27176, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27176, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4661,22 +4661,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27180, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27185, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27190, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27175, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4692,22 +4692,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27179, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27179, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27184, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27184, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27189, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27189, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27174, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27174, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4723,22 +4723,22 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27178, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27178, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27183, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27183, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27188, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27188, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27173, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27173, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -4747,7 +4747,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4765,7 +4765,7 @@ static void inverted_rc_track_left_quarter_banked_helix_large_down( /** rct2: 0x008A9728 */ static void inverted_rc_track_right_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4775,22 +4775,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27193, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27193, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27198, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27198, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27203, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27203, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27208, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27208, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -4799,7 +4799,7 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4815,22 +4815,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27194, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27194, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27199, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27199, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27204, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27204, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27209, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27209, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -4846,22 +4846,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27195, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27200, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27205, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27210, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -4877,22 +4877,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27196, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27196, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27201, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27201, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27206, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27206, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27211, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27211, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -4908,22 +4908,22 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27197, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27197, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27202, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27202, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27207, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27207, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27212, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27212, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -4932,7 +4932,7 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4950,54 +4950,54 @@ static void inverted_rc_track_right_quarter_banked_helix_large_down( /** rct2: 0x008A9A38 */ static void inverted_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27711, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27711, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27712, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27712, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27713, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27713, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27714, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27714, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5015,54 +5015,54 @@ static void inverted_rc_track_25_deg_up_left_banked( /** rct2: 0x008A9A48 */ static void inverted_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27715, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27715, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27716, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27716, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27717, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27717, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27718, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27718, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5080,41 +5080,41 @@ static void inverted_rc_track_25_deg_up_right_banked( /** rct2: 0x008A9738 */ static void inverted_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27129, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27130, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5126,7 +5126,7 @@ static void inverted_rc_track_on_ride_photo( /** rct2: 0x008A9A58 */ static void inverted_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5134,7 +5134,7 @@ static void inverted_rc_track_25_deg_down_left_banked( /** rct2: 0x008A9A68 */ static void inverted_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5142,7 +5142,7 @@ static void inverted_rc_track_25_deg_down_right_banked( /** rct2: 0x008A9748 */ static void inverted_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5152,22 +5152,22 @@ static void inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27507, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27507, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27511, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27511, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27515, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27515, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27519, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27519, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5175,7 +5175,7 @@ static void inverted_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5188,22 +5188,22 @@ static void inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27508, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27508, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27512, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27512, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27516, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27516, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27520, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27520, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5219,22 +5219,22 @@ static void inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27509, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27509, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27513, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27513, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27517, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27517, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27521, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27521, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5253,22 +5253,22 @@ static void inverted_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27510, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27510, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27514, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27514, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27518, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27518, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27522, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27522, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; } @@ -5282,19 +5282,19 @@ static void inverted_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5305,7 +5305,7 @@ static void inverted_rc_track_left_eighth_to_diag( /** rct2: 0x008A9758 */ static void inverted_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5315,22 +5315,22 @@ static void inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27491, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27491, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27495, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27495, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27499, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27499, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27503, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27503, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5338,7 +5338,7 @@ static void inverted_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5351,22 +5351,22 @@ static void inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27492, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27492, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27496, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27496, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27500, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27500, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27504, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27504, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5382,22 +5382,22 @@ static void inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27493, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27493, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27497, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27497, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27501, 0, 0, 28, 28, 3, height + 29, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27501, 0, 0, 28, 28, 3, height + 29, 4, 4, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27505, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27505, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5416,22 +5416,22 @@ static void inverted_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27494, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27494, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27498, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27498, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27502, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27502, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27506, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27506, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -5445,19 +5445,19 @@ static void inverted_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5468,7 +5468,7 @@ static void inverted_rc_track_right_eighth_to_diag( /** rct2: 0x008A9768 */ static void inverted_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5477,7 +5477,7 @@ static void inverted_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A9778 */ static void inverted_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5486,7 +5486,7 @@ static void inverted_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A9938 */ static void inverted_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5496,22 +5496,22 @@ static void inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27539, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27539, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27543, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27543, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27547, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27547, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27551, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27551, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5519,7 +5519,7 @@ static void inverted_rc_track_left_eighth_bank_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5532,22 +5532,22 @@ static void inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27540, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27540, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27544, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27544, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27548, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27548, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27552, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27552, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5563,22 +5563,22 @@ static void inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27541, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27541, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27545, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27545, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27549, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27549, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27553, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27553, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5597,22 +5597,22 @@ static void inverted_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27542, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27542, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27546, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27546, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27550, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27550, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27554, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27554, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; } @@ -5626,19 +5626,19 @@ static void inverted_rc_track_left_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5649,7 +5649,7 @@ static void inverted_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008A9948 */ static void inverted_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5659,22 +5659,22 @@ static void inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27523, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27523, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27527, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27527, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27531, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27531, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27535, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27535, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -5682,7 +5682,7 @@ static void inverted_rc_track_right_eighth_bank_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5695,22 +5695,22 @@ static void inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27524, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27524, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27528, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27528, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27532, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27532, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27536, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27536, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -5726,22 +5726,22 @@ static void inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27525, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27525, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27529, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27529, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27533, 0, 0, 28, 28, 3, height + 29, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 27533, 0, 0, 28, 28, 3, height + 29, 4, 4, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27537, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27537, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -5760,22 +5760,22 @@ static void inverted_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27526, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27526, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27530, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27530, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27534, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27534, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27538, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27538, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -5789,19 +5789,19 @@ static void inverted_rc_track_right_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5812,7 +5812,7 @@ static void inverted_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008A9958 */ static void inverted_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5821,7 +5821,7 @@ static void inverted_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008A9968 */ static void inverted_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5830,7 +5830,7 @@ static void inverted_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008A9788 */ static void inverted_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5842,7 +5842,7 @@ static void inverted_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27614, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27614, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5853,7 +5853,7 @@ static void inverted_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27558, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27558, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5869,7 +5869,7 @@ static void inverted_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27611, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27611, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5880,7 +5880,7 @@ static void inverted_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27555, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27555, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5896,7 +5896,7 @@ static void inverted_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27613, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27613, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5907,7 +5907,7 @@ static void inverted_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27557, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27557, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5923,7 +5923,7 @@ static void inverted_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27612, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27612, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5934,7 +5934,7 @@ static void inverted_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27556, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27556, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -5946,19 +5946,19 @@ static void inverted_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5969,7 +5969,7 @@ static void inverted_rc_track_diag_flat( /** rct2: 0x008A97B8 */ static void inverted_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5981,7 +5981,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -5992,7 +5992,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6008,7 +6008,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6019,7 +6019,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6035,7 +6035,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6046,7 +6046,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6062,7 +6062,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6073,7 +6073,7 @@ static void inverted_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6085,19 +6085,19 @@ static void inverted_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6108,7 +6108,7 @@ static void inverted_rc_track_diag_25_deg_up( /** rct2: 0x008A9818 */ static void inverted_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6118,7 +6118,7 @@ static void inverted_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6131,7 +6131,7 @@ static void inverted_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6144,7 +6144,7 @@ static void inverted_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6157,7 +6157,7 @@ static void inverted_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6168,19 +6168,19 @@ static void inverted_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 32, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 32, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 36, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 36, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 32, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 32, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 36, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 36, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6191,7 +6191,7 @@ static void inverted_rc_track_diag_60_deg_up( /** rct2: 0x008A9798 */ static void inverted_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6203,7 +6203,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6214,7 +6214,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6230,7 +6230,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6241,7 +6241,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6257,7 +6257,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6268,7 +6268,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6284,7 +6284,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6295,7 +6295,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6307,19 +6307,19 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6330,7 +6330,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A97F8 */ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6340,7 +6340,7 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6353,7 +6353,7 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6366,7 +6366,7 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6379,7 +6379,7 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6390,19 +6390,19 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6413,7 +6413,7 @@ static void inverted_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A9808 */ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6423,7 +6423,7 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6436,7 +6436,7 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6449,7 +6449,7 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -6462,7 +6462,7 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -6473,19 +6473,19 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6496,7 +6496,7 @@ static void inverted_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A97A8 */ static void inverted_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6508,7 +6508,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6519,7 +6519,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6535,7 +6535,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6546,7 +6546,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6562,7 +6562,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6573,7 +6573,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6589,7 +6589,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6600,7 +6600,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6612,19 +6612,19 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6635,7 +6635,7 @@ static void inverted_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A97E8 */ static void inverted_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6647,7 +6647,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27624, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6658,7 +6658,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27568, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6674,7 +6674,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27625, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6685,7 +6685,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27569, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6701,7 +6701,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27623, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6712,7 +6712,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27567, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6728,7 +6728,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27626, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6739,7 +6739,7 @@ static void inverted_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27570, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -6751,19 +6751,19 @@ static void inverted_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6774,7 +6774,7 @@ static void inverted_rc_track_diag_25_deg_down( /** rct2: 0x008A9848 */ static void inverted_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6784,7 +6784,7 @@ static void inverted_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27580, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -6797,7 +6797,7 @@ static void inverted_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27581, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6810,7 +6810,7 @@ static void inverted_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27579, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6823,7 +6823,7 @@ static void inverted_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27582, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -6834,19 +6834,19 @@ static void inverted_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 24, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 24, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 28, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 28, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 24, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 24, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 28, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 28, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6857,7 +6857,7 @@ static void inverted_rc_track_diag_60_deg_down( /** rct2: 0x008A97C8 */ static void inverted_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6869,7 +6869,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27620, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6880,7 +6880,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27564, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6895,7 +6895,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27621, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6906,7 +6906,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27565, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6921,7 +6921,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27619, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6932,7 +6932,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27563, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6947,7 +6947,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27622, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6958,7 +6958,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27566, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -6970,19 +6970,19 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -6993,7 +6993,7 @@ static void inverted_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A9828 */ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7003,7 +7003,7 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27576, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -7016,7 +7016,7 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27577, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7029,7 +7029,7 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27575, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7042,7 +7042,7 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27578, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7053,19 +7053,19 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7076,7 +7076,7 @@ static void inverted_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A9838 */ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7086,7 +7086,7 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27572, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7099,7 +7099,7 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27573, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7112,7 +7112,7 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27571, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7125,7 +7125,7 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27574, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -7136,19 +7136,19 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7159,7 +7159,7 @@ static void inverted_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A97D8 */ static void inverted_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7171,7 +7171,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27616, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7182,7 +7182,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27560, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7198,7 +7198,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27617, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7209,7 +7209,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27561, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7225,7 +7225,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27615, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7236,7 +7236,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27559, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7252,7 +7252,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27618, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7263,7 +7263,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 27562, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7275,19 +7275,19 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7298,7 +7298,7 @@ static void inverted_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A9878 */ static void inverted_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7308,7 +7308,7 @@ static void inverted_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7321,7 +7321,7 @@ static void inverted_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7334,7 +7334,7 @@ static void inverted_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7347,7 +7347,7 @@ static void inverted_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7359,19 +7359,19 @@ static void inverted_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7382,7 +7382,7 @@ static void inverted_rc_track_diag_flat_to_left_bank( /** rct2: 0x008A9888 */ static void inverted_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7392,7 +7392,7 @@ static void inverted_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7405,7 +7405,7 @@ static void inverted_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7418,7 +7418,7 @@ static void inverted_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7431,7 +7431,7 @@ static void inverted_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7443,19 +7443,19 @@ static void inverted_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7466,7 +7466,7 @@ static void inverted_rc_track_diag_flat_to_right_bank( /** rct2: 0x008A9898 */ static void inverted_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7476,7 +7476,7 @@ static void inverted_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27592, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7489,7 +7489,7 @@ static void inverted_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27593, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7502,7 +7502,7 @@ static void inverted_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27591, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7515,7 +7515,7 @@ static void inverted_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27594, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7527,19 +7527,19 @@ static void inverted_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7550,7 +7550,7 @@ static void inverted_rc_track_diag_left_bank_to_flat( /** rct2: 0x008A98A8 */ static void inverted_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7560,7 +7560,7 @@ static void inverted_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27588, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7573,7 +7573,7 @@ static void inverted_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27589, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7586,7 +7586,7 @@ static void inverted_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27587, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7599,7 +7599,7 @@ static void inverted_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27590, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -7611,19 +7611,19 @@ static void inverted_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7634,7 +7634,7 @@ static void inverted_rc_track_diag_right_bank_to_flat( /** rct2: 0x008A98D8 */ static void inverted_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7644,7 +7644,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7657,7 +7657,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7670,7 +7670,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7683,7 +7683,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7694,19 +7694,19 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7717,7 +7717,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008A98E8 */ static void inverted_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7727,7 +7727,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7740,7 +7740,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7753,7 +7753,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7766,7 +7766,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7777,19 +7777,19 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7800,7 +7800,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008A98B8 */ static void inverted_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7810,7 +7810,7 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7823,7 +7823,7 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7836,7 +7836,7 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7849,7 +7849,7 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7860,19 +7860,19 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7883,7 +7883,7 @@ static void inverted_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008A98C8 */ static void inverted_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7893,7 +7893,7 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7906,7 +7906,7 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7919,7 +7919,7 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7932,7 +7932,7 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7943,19 +7943,19 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7966,7 +7966,7 @@ static void inverted_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008A98F8 */ static void inverted_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7976,7 +7976,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27600, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -7988,7 +7988,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27601, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8000,7 +8000,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27599, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8012,7 +8012,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27602, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8023,19 +8023,19 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -8046,7 +8046,7 @@ static void inverted_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008A9908 */ static void inverted_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8056,7 +8056,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27596, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8068,7 +8068,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27597, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8080,7 +8080,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27595, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8092,7 +8092,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27598, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8103,19 +8103,19 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -8126,7 +8126,7 @@ static void inverted_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008A9918 */ static void inverted_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8136,7 +8136,7 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27608, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8149,7 +8149,7 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27609, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8162,7 +8162,7 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27607, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8175,7 +8175,7 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27610, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8186,19 +8186,19 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8209,7 +8209,7 @@ static void inverted_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008A9928 */ static void inverted_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8219,7 +8219,7 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27604, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8232,7 +8232,7 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27605, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8245,7 +8245,7 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27603, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8258,7 +8258,7 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27606, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -8269,19 +8269,19 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8292,7 +8292,7 @@ static void inverted_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008A9858 */ static void inverted_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8302,7 +8302,7 @@ static void inverted_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8315,7 +8315,7 @@ static void inverted_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8328,7 +8328,7 @@ static void inverted_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8341,7 +8341,7 @@ static void inverted_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8353,19 +8353,19 @@ static void inverted_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8376,7 +8376,7 @@ static void inverted_rc_track_diag_left_bank( /** rct2: 0x008A9868 */ static void inverted_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8386,7 +8386,7 @@ static void inverted_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27584, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8399,7 +8399,7 @@ static void inverted_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27585, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8412,7 +8412,7 @@ static void inverted_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27583, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8425,7 +8425,7 @@ static void inverted_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27586, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -8437,19 +8437,19 @@ static void inverted_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8460,7 +8460,7 @@ static void inverted_rc_track_diag_right_bank( /** rct2: 0x008A9978 */ static void inverted_rc_track_left_large_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8470,22 +8470,22 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27639, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27639, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27646, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27646, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27653, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27653, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27660, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27660, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; } @@ -8502,22 +8502,22 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27640, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27640, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27647, 0, 0, 32, 20, 9, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27647, 0, 0, 32, 20, 9, height, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27654, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27654, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27661, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27661, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; } @@ -8530,21 +8530,20 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27641, 0, 0, 24, 16, 3, height, 8, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27641, 0, 0, 24, 16, 3, height, 8, 0, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27648, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27648, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27655, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27655, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27662, 0, 0, 2, 16, 3, height, 30, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27662, 0, 0, 2, 16, 3, height, 30, 16, height + 70); break; } @@ -8560,21 +8559,20 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27642, 0, 0, 8, 16, 3, height, 24, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27642, 0, 0, 8, 16, 3, height, 24, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27649, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27649, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27656, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27656, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27663, 0, 0, 2, 16, 3, height, 30, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27663, 0, 0, 2, 16, 3, height, 30, 16, height + 100); break; } @@ -8590,21 +8588,20 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27643, 0, 0, 2, 2, 3, height, 30, 30, + session, direction, session.TrackColours[SCHEME_TRACK] | 27643, 0, 0, 2, 2, 3, height, 30, 30, height + 80); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27650, 0, 0, 16, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27650, 0, 0, 16, 16, 0, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27657, 0, 0, 16, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27657, 0, 0, 16, 16, 0, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27664, 0, 0, 2, 16, 3, height, 30, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27664, 0, 0, 2, 16, 3, height, 30, 0, height + 90); break; } @@ -8617,21 +8614,19 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27644, 0, 0, 2, 16, 3, height, 30, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27644, 0, 0, 2, 16, 3, height, 30, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27651, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27651, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27658, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27658, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27665, 0, 0, 2, 16, 3, height, 30, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27665, 0, 0, 2, 16, 3, height, 30, 0, height + 140); break; } @@ -8647,30 +8642,29 @@ static void inverted_rc_track_left_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27645, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27645, 0, 0, 32, 16, 0, height, 0, 16, height + 32); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27652, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27652, 0, 0, 32, 16, 0, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27659, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27659, 0, 0, 32, 16, 0, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 25, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 25, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27666, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27666, 0, 0, 32, 16, 0, height, 0, 0, height + 32); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8689,7 +8683,7 @@ static void inverted_rc_track_left_large_half_loop_up( /** rct2: 0x008A9988 */ static void inverted_rc_track_right_large_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8699,22 +8693,22 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27688, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27688, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27681, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27681, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27674, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27674, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27667, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27667, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; } @@ -8731,22 +8725,22 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27689, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27689, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27682, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27682, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27675, 0, 0, 32, 20, 19, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27675, 0, 0, 32, 20, 19, height, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27668, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27668, 0, 0, 32, 20, 3, height, 0, 6, height + 29); break; } @@ -8759,21 +8753,20 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27690, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27690, 0, 0, 32, 16, 3, height, 0, 16, height + 70); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27683, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27683, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27676, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27676, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27669, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27669, 0, 0, 32, 16, 3, height, 0, 0, height + 70); break; } @@ -8789,21 +8782,20 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27691, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27691, 0, 0, 32, 16, 3, height, 0, 16, height + 100); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27684, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27684, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27677, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27677, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27670, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27670, 0, 0, 32, 16, 3, height, 0, 0, height + 100); break; } @@ -8819,21 +8811,20 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27692, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27692, 0, 0, 16, 16, 3, height, 16, 0, height + 90); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27685, 0, 0, 16, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27685, 0, 0, 16, 16, 0, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27678, 0, 0, 16, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27678, 0, 0, 16, 16, 0, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27671, 0, 0, 2, 16, 3, height, 30, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27671, 0, 0, 2, 16, 3, height, 30, 16, height + 110); break; } @@ -8846,21 +8837,20 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27693, 0, 0, 2, 16, 3, height, 30, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27693, 0, 0, 2, 16, 3, height, 30, 0, height + 140); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27686, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27686, 0, 0, 32, 16, 0, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27679, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27679, 0, 0, 32, 16, 0, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27672, 0, 0, 2, 16, 3, height, 30, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27672, 0, 0, 2, 16, 3, height, 30, 16, height + 140); break; } @@ -8876,30 +8866,29 @@ static void inverted_rc_track_right_large_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27694, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27694, 0, 0, 32, 16, 0, height, 0, 0, height + 32); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27687, 0, 0, 32, 16, 0, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27687, 0, 0, 32, 16, 0, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 25, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 25, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27680, 0, 0, 32, 16, 0, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 27680, 0, 0, 32, 16, 0, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27673, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27673, 0, 0, 32, 16, 0, height, 0, 16, height + 32); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8918,7 +8907,7 @@ static void inverted_rc_track_right_large_half_loop_up( /** rct2: 0x008A9998 */ static void inverted_rc_track_right_large_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_large_half_loop_up(session, ride, 6 - trackSequence, direction, height, trackElement); @@ -8926,7 +8915,7 @@ static void inverted_rc_track_right_large_half_loop_down( /** rct2: 0x008A99A8 */ static void inverted_rc_track_left_large_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_large_half_loop_up(session, ride, 6 - trackSequence, direction, height, trackElement); @@ -8934,7 +8923,7 @@ static void inverted_rc_track_left_large_half_loop_down( /** rct2: 0x008A96A8 */ static void inverted_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -8942,22 +8931,22 @@ static void inverted_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27337, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27338, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -8966,7 +8955,7 @@ static void inverted_rc_track_block_brakes( /** rct2: 0x008A9A78 */ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8976,19 +8965,19 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27762, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27762, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27764, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27764, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27766, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27766, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27760, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27760, 0, 6, 32, 20, 3, height + 29); break; } @@ -8996,7 +8985,7 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -9015,19 +9004,19 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27761, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27761, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27763, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27763, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27765, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27765, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27759, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27759, 6, 0, 20, 32, 3, height + 29); break; } @@ -9035,7 +9024,7 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -9053,7 +9042,7 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A9A88 */ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9063,19 +9052,19 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27751, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27751, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27753, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27753, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27755, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27755, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27757, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27757, 0, 6, 32, 20, 3, height + 29); break; } @@ -9083,7 +9072,7 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -9102,19 +9091,19 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27752, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27752, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27754, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27754, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27756, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27756, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27758, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27758, 6, 0, 20, 32, 3, height + 29); break; } @@ -9122,7 +9111,7 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -9140,7 +9129,7 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A9A98 */ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -9150,7 +9139,7 @@ static void inverted_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A9AA8 */ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -9160,7 +9149,7 @@ static void inverted_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A9BB8 */ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9170,19 +9159,19 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27787, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27787, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27792, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27792, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27797, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27797, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27802, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27802, 0, 6, 32, 20, 3, height + 29); break; } @@ -9190,7 +9179,7 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -9206,19 +9195,19 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27788, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27788, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27793, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27793, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27798, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27798, 0, 16, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27803, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27803, 0, 16, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9233,19 +9222,19 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27789, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27789, 0, 16, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27794, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27794, 16, 16, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27799, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27799, 16, 0, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27804, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27804, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9260,19 +9249,19 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27790, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27790, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27795, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27795, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27800, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27800, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27805, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27805, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9287,19 +9276,19 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27791, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27791, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27796, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27796, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27801, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27801, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27806, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27806, 6, 0, 20, 32, 3, height + 29); break; } @@ -9307,7 +9296,7 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -9325,7 +9314,7 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A9BC8 */ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9335,19 +9324,19 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27767, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27767, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27772, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27772, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27777, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27777, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27782, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27782, 0, 6, 32, 20, 3, height + 29); break; } @@ -9355,7 +9344,7 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -9371,19 +9360,19 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27768, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27768, 0, 16, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27773, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27773, 0, 16, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27778, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27778, 0, 0, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27783, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27783, 0, 0, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9398,19 +9387,19 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27769, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27769, 0, 0, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27774, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27774, 16, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27779, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27779, 16, 16, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27784, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27784, 0, 16, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9425,19 +9414,19 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27770, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27770, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27775, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27775, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27780, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27780, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27785, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27785, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -9452,19 +9441,19 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27771, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27771, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27776, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27776, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27781, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27781, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27786, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 27786, 6, 0, 20, 32, 3, height + 29); break; } @@ -9472,7 +9461,7 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -9490,7 +9479,7 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A9BD8 */ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -9500,7 +9489,7 @@ static void inverted_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A9BE8 */ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -9510,54 +9499,54 @@ static void inverted_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A9AB8 */ static void inverted_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27719, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27719, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27720, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27720, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27721, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27721, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27722, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27722, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9575,54 +9564,54 @@ static void inverted_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x008A9AC8 */ static void inverted_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27723, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27723, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27724, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27724, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27725, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27725, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27726, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27726, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9640,54 +9629,54 @@ static void inverted_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x008A9AD8 */ static void inverted_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27727, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27727, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27728, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27728, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27729, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27729, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27730, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27730, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9705,54 +9694,54 @@ static void inverted_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A9AE8 */ static void inverted_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27731, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27731, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27732, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27732, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27733, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27733, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27734, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27734, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9770,7 +9759,7 @@ static void inverted_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A9AF8 */ static void inverted_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_banked_25_deg_up_to_25_deg_up( @@ -9779,7 +9768,7 @@ static void inverted_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x008A9B08 */ static void inverted_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_banked_25_deg_up_to_25_deg_up( @@ -9788,7 +9777,7 @@ static void inverted_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x008A9B18 */ static void inverted_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_right_banked_25_deg_up( @@ -9797,7 +9786,7 @@ static void inverted_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A9B28 */ static void inverted_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_25_deg_up_to_left_banked_25_deg_up( @@ -9806,54 +9795,54 @@ static void inverted_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A9B38 */ static void inverted_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27735, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27735, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27736, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27736, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27737, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27737, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27738, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27738, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9871,54 +9860,54 @@ static void inverted_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x008A9B48 */ static void inverted_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27739, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27739, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27740, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27740, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27741, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27741, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27742, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27742, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9936,54 +9925,54 @@ static void inverted_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x008A9B58 */ static void inverted_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27743, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27743, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27744, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27744, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27745, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27745, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27746, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27746, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10001,54 +9990,54 @@ static void inverted_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x008A9B68 */ static void inverted_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27747, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27747, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27748, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27748, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27749, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27749, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27750, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27750, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10066,7 +10055,7 @@ static void inverted_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x008A9B78 */ static void inverted_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -10075,7 +10064,7 @@ static void inverted_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x008A9B88 */ static void inverted_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -10084,7 +10073,7 @@ static void inverted_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x008A9B98 */ static void inverted_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -10093,7 +10082,7 @@ static void inverted_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x008A9BA8 */ static void inverted_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -10102,54 +10091,54 @@ static void inverted_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x008A99B8 */ static void inverted_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27695, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27695, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27696, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27696, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27697, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27697, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27698, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27698, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10167,54 +10156,54 @@ static void inverted_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x008A99C8 */ static void inverted_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27699, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27699, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27700, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27700, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27701, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27701, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27702, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27702, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10232,54 +10221,54 @@ static void inverted_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x008A99D8 */ static void inverted_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27703, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27703, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27704, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27704, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27705, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27705, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27706, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27706, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10297,54 +10286,54 @@ static void inverted_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x008A99E8 */ static void inverted_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27707, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27707, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27708, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27708, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27709, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27709, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27710, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27710, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10362,7 +10351,7 @@ static void inverted_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x008A99F8 */ static void inverted_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -10370,7 +10359,7 @@ static void inverted_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x008A9A08 */ static void inverted_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -10378,7 +10367,7 @@ static void inverted_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x008A9A18 */ static void inverted_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -10386,7 +10375,7 @@ static void inverted_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x008A9A28 */ static void inverted_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { inverted_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); diff --git a/src/openrct2/ride/coaster/JuniorRollerCoaster.cpp b/src/openrct2/ride/coaster/JuniorRollerCoaster.cpp index af4f601135..3a80fa7901 100644 --- a/src/openrct2/ride/coaster/JuniorRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/JuniorRollerCoaster.cpp @@ -1844,18 +1844,18 @@ static constexpr const uint32_t junior_rc_track_pieces_diag_60_deg_down_to_25_de }; void junior_rc_paint_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { - uint32_t imageId = junior_rc_track_pieces_flat[EnumValue(chainType)][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = junior_rc_track_pieces_flat[EnumValue(chainType)][direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -1864,7 +1864,7 @@ void junior_rc_paint_track_flat( } void junior_rc_paint_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, uint8_t rideType) { uint32_t imageId; @@ -1874,44 +1874,44 @@ void junior_rc_paint_station( if (direction == 0 || direction == 2) { // height -= 2 (height - 2) - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height }); // height += 2 (height) if (trackElement.GetTrackType() == TrackElemType::EndStation && rideType == RIDE_TYPE_JUNIOR_ROLLER_COASTER) { - imageId = junior_rc_track_pieces_block_brake[isBraked][direction] | session->TrackColours[SCHEME_TRACK]; + imageId = junior_rc_track_pieces_block_brake[isBraked][direction] | session.TrackColours[SCHEME_TRACK]; } else { - imageId = junior_rc_track_pieces_station[false][direction] | session->TrackColours[SCHEME_TRACK]; + imageId = junior_rc_track_pieces_station[false][direction] | session.TrackColours[SCHEME_TRACK]; } PaintAddImageAsChild(session, imageId, 0, 6, 32, 20, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else if (direction == 1 || direction == 3) { // height -= 2 (height - 2) - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height }); // height += 2 (height) if (trackElement.GetTrackType() == TrackElemType::EndStation && rideType == RIDE_TYPE_JUNIOR_ROLLER_COASTER) { - imageId = junior_rc_track_pieces_block_brake[isBraked][direction] | session->TrackColours[SCHEME_TRACK]; + imageId = junior_rc_track_pieces_block_brake[isBraked][direction] | session.TrackColours[SCHEME_TRACK]; } else { - imageId = junior_rc_track_pieces_station[false][direction] | session->TrackColours[SCHEME_TRACK]; + imageId = junior_rc_track_pieces_station[false][direction] | session.TrackColours[SCHEME_TRACK]; } PaintAddImageAsChild(session, imageId, 6, 0, 20, 32, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } @@ -1922,20 +1922,20 @@ void junior_rc_paint_station( } void junior_rc_paint_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { - uint32_t imageId = junior_rc_track_pieces_25_deg_up[EnumValue(chainType)][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = junior_rc_track_pieces_25_deg_up[EnumValue(chainType)][direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height); int8_t tunnelHeights[4] = { -8, 8, 8, -8 }; uint8_t tunnelType[4] = { TUNNEL_1, TUNNEL_2, TUNNEL_2, TUNNEL_1 }; paint_util_push_tunnel_rotated(session, direction, height + tunnelHeights[direction], tunnelType[direction]); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t supportType = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, supportType, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -1944,11 +1944,11 @@ void junior_rc_paint_track_25_deg_up( } void junior_rc_paint_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { uint32_t imageId = junior_rc_track_pieces_flat_to_25_deg_up[EnumValue(chainType)][direction] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height); if (direction == 0 || direction == 3) @@ -1960,11 +1960,11 @@ void junior_rc_paint_track_flat_to_25_deg_up( paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_2); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t supportType = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; uint16_t ax = (direction == 0) ? 5 : 3; - metal_a_supports_paint_setup(session, supportType, 4, ax, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, ax, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -1973,11 +1973,11 @@ void junior_rc_paint_track_flat_to_25_deg_up( } void junior_rc_paint_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { uint32_t imageId = junior_rc_track_pieces_25_deg_up_to_flat[EnumValue(chainType)][direction] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height); uint8_t tunnelType; @@ -2002,10 +2002,10 @@ void junior_rc_paint_track_25_deg_up_to_flat( paint_util_push_tunnel_left(session, tunnelHeight, tunnelType); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t supportType = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, supportType, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2021,11 +2021,11 @@ static constexpr const int8_t junior_rc_track_right_quarter_turn_5_tiles_support }; static void junior_rc_right_quarter_turn_5_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets); @@ -2035,12 +2035,12 @@ static void junior_rc_right_quarter_turn_5_tiles_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 6: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 0, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2103,7 +2103,7 @@ static constexpr const uint8_t junior_rc_left_quarter_turn_5_tiles_to_right_turn /* rct2: 0x0051917A */ static void junior_rc_left_quarter_turn_5_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = junior_rc_left_quarter_turn_5_tiles_to_right_turn_map[trackSequence]; @@ -2114,12 +2114,12 @@ static void junior_rc_left_quarter_turn_5_tiles_paint_setup( * rct2: 0x008AAFC0, 0x00521593, 0x005216A1, 0x005217AF, 0x00521884 */ static void junior_rc_flat_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_flat_to_left_bank[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_flat_to_left_bank[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2135,7 +2135,7 @@ static void junior_rc_flat_to_left_bank_paint_setup( if (junior_rc_track_pieces_flat_to_left_bank[direction][1] != 0) { - image_id = junior_rc_track_pieces_flat_to_left_bank[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_flat_to_left_bank[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2147,10 +2147,10 @@ static void junior_rc_flat_to_left_bank_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2162,12 +2162,12 @@ static void junior_rc_flat_to_left_bank_paint_setup( * rct2: 0x008AAFD0, 0x00521959, 0x00521A2E, 0x00521B03, 0x00521C11 */ static void junior_rc_flat_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_flat_to_right_bank[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_flat_to_right_bank[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2183,7 +2183,7 @@ static void junior_rc_flat_to_right_bank_paint_setup( if (junior_rc_track_pieces_flat_to_right_bank[direction][1] != 0) { - image_id = junior_rc_track_pieces_flat_to_right_bank[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_flat_to_right_bank[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2195,10 +2195,10 @@ static void junior_rc_flat_to_right_bank_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2207,14 +2207,14 @@ static void junior_rc_flat_to_right_bank_paint_setup( } static void junior_rc_left_bank_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_flat_to_right_bank_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void junior_rc_right_bank_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_flat_to_left_bank_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -2284,7 +2284,7 @@ static constexpr const CoordsXYZ junior_rc_banked_right_quarter_turn_5_tiles_bou /* rct2: 0x008AB010, 0x0052304C */ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t thickness = 1; @@ -2293,18 +2293,18 @@ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup( thickness = 26; } track_paint_util_right_quarter_turn_5_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_5_tiles, nullptr, junior_rc_banked_right_quarter_turn_5_tiles_bound_lengths, junior_rc_banked_right_quarter_turn_5_tiles_bound_offsets); if (direction == 1 && trackSequence == 6) { - uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_NW_SW_PART_4_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_NW_SW_PART_4_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height }); } else if (direction == 3 && trackSequence == 0) { - uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_SE_NE_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_5_TILES_SE_NE_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height }); } @@ -2314,12 +2314,12 @@ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 6: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 0, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2378,7 +2378,7 @@ static void junior_rc_banked_right_quarter_turn_5_tiles_paint_setup( /* rct2: 0x008AB000 */ static void junior_rc_banked_left_quarter_turn_5_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = junior_rc_left_quarter_turn_5_tiles_to_right_turn_map[trackSequence]; @@ -2390,12 +2390,12 @@ static void junior_rc_banked_left_quarter_turn_5_tiles_paint_setup( * rct2: 0x008AB020, 0x00522073, 0x00522182, 0x00522291, 0x00522367 */ static void junior_rc_left_bank_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_left_banked_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_left_banked_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2407,7 +2407,7 @@ static void junior_rc_left_bank_to_25_deg_up_paint_setup( if (junior_rc_track_pieces_left_banked_to_25_deg_up[direction][1] != 0) { - image_id = junior_rc_track_pieces_left_banked_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_left_banked_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2419,10 +2419,10 @@ static void junior_rc_left_bank_to_25_deg_up_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) @@ -2450,12 +2450,12 @@ static void junior_rc_left_bank_to_25_deg_up_paint_setup( * rct2: 0x008AB030, 0x0052243D, 0x00522513, 0x005225E9, 0x005226F8 */ static void junior_rc_right_bank_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_right_banked_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_right_banked_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2467,7 +2467,7 @@ static void junior_rc_right_bank_to_25_deg_up_paint_setup( if (junior_rc_track_pieces_right_banked_to_25_deg_up[direction][1] != 0) { - image_id = junior_rc_track_pieces_right_banked_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_right_banked_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2479,10 +2479,10 @@ static void junior_rc_right_bank_to_25_deg_up_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) @@ -2510,7 +2510,7 @@ static void junior_rc_right_bank_to_25_deg_up_paint_setup( * rct2: 0x008AB040, 0x00522807, 0x0052291A, 0x00522A2D, 0x00522B07 */ static void junior_rc_25_deg_up_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; @@ -2528,7 +2528,7 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup( tunnelHeight = height - 8; } - image_id = junior_rc_track_pieces_25_deg_up_to_left_bank[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_25_deg_up_to_left_bank[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2544,7 +2544,7 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup( if (junior_rc_track_pieces_25_deg_up_to_left_bank[direction][1] != 0) { - image_id = junior_rc_track_pieces_25_deg_up_to_left_bank[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_25_deg_up_to_left_bank[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2556,10 +2556,10 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2571,7 +2571,7 @@ static void junior_rc_25_deg_up_to_left_bank_paint_setup( * rct2: 0x008AB050, 0x00522BE1, 0x00522CBB, 0x00522D95, 0x00522EA8 */ static void junior_rc_25_deg_up_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; @@ -2589,7 +2589,7 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup( tunnelHeight = height - 8; } - image_id = junior_rc_track_pieces_25_deg_up_to_right_bank[direction][0] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_25_deg_up_to_right_bank[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); @@ -2605,7 +2605,7 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup( if (junior_rc_track_pieces_25_deg_up_to_right_bank[direction][1] != 0) { - image_id = junior_rc_track_pieces_25_deg_up_to_right_bank[direction][1] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_25_deg_up_to_right_bank[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { @@ -2617,10 +2617,10 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup( } } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2632,7 +2632,7 @@ static void junior_rc_25_deg_up_to_right_bank_paint_setup( * rct2: 0x008AB060 */ static void junior_rc_left_bank_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_25_deg_up_to_right_bank_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -2642,7 +2642,7 @@ static void junior_rc_left_bank_to_25_deg_down_paint_setup( * rct2: 0x008AB070 */ static void junior_rc_right_bank_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_25_deg_up_to_left_bank_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -2652,7 +2652,7 @@ static void junior_rc_right_bank_to_25_deg_down_paint_setup( * rct2: 0x008AB080 */ static void junior_rc_25_deg_down_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_right_bank_to_25_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -2662,7 +2662,7 @@ static void junior_rc_25_deg_down_to_left_bank_paint_setup( * rct2: 0x008AB090 */ static void junior_rc_25_deg_down_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_left_bank_to_25_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -2686,12 +2686,12 @@ static constexpr const CoordsXY junior_rc_left_bank_bound_offsets[4] = { * rct2: 0x008AB0A0, 0x00521D1F, 0x00521DF4, 0x00521EC9, 0x00521F9E */ static void junior_rc_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_left_bank[direction] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_left_bank[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, image_id, { 0, 0, height }, junior_rc_left_bank_bound_lengths[direction], { junior_rc_left_bank_bound_offsets[direction], height }); @@ -2705,10 +2705,10 @@ static void junior_rc_left_bank_paint_setup( paint_util_push_tunnel_left(session, height, 0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -2720,18 +2720,18 @@ static void junior_rc_left_bank_paint_setup( * rct2: 0x008AB0B0 */ static void junior_rc_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_left_bank_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_quarter_turn_5_tiles_25_deg_up[EnumValue(chainType)], junior_rc_left_quarter_turn_5_tiles_25_deg_up_offsets, defaultRightQuarterTurn5TilesBoundLengths, nullptr); @@ -2741,12 +2741,12 @@ void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, - (direction == 0 || direction == 3) ? 10 : 8, height, session->TrackColours[SCHEME_SUPPORTS]); + (direction == 0 || direction == 3) ? 10 : 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 6: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, supportSpecial[direction], height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2807,11 +2807,11 @@ void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up( } void junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_quarter_turn_5_tiles_25_deg_up[EnumValue(chainType)], defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, nullptr); @@ -2821,12 +2821,12 @@ void junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, supportSpecial[direction], height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 6: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 8, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2888,7 +2888,7 @@ void junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up( /* rct2: 0x008AAE10, 0x00519D88, 0x00519DAC, 0x00519DD0, 0x00519DF4 */ static void junior_rc_left_quarter_turn_5_tiles_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -2899,7 +2899,7 @@ static void junior_rc_left_quarter_turn_5_tiles_25_deg_up_paint_setup( /* rct2: 0x008AAE20, 0x00519E18, 0x0051A148, 0x0051A452, 0x0051A738 */ static void junior_rc_right_quarter_turn_5_tiles_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -2910,7 +2910,7 @@ static void junior_rc_right_quarter_turn_5_tiles_25_deg_up_paint_setup( /* rct2: 0x008AAE30, 0x0051AA42, 0x0051AA68, 0x0051AA8C, 0x0051AAB0 */ static void junior_rc_left_quarter_turn_5_tiles_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_right_quarter_turn_5_tiles_25_deg_up_paint_setup( @@ -2920,7 +2920,7 @@ static void junior_rc_left_quarter_turn_5_tiles_25_deg_down_paint_setup( /* rct2: 0x008AAE40, 0x0051AAD4, 0x0051AE04, 0x0051B10E, 0x0051B3F4 */ static void junior_rc_right_quarter_turn_5_tiles_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_left_quarter_turn_5_tiles_25_deg_up_paint_setup( @@ -2930,7 +2930,7 @@ static void junior_rc_right_quarter_turn_5_tiles_25_deg_down_paint_setup( /* rct2: 0x008AAE50, 0x0051B6FE, 0x0051B946, 0x0051BB8E, 0x0051BBA8 */ static void junior_rc_s_bend_left_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -2952,7 +2952,7 @@ static void junior_rc_s_bend_left_paint_setup( { 32, 20 }, }; - uint32_t imageId = junior_rc_track_pieces_s_bend_left[(direction & 1)][trackSequence] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = junior_rc_track_pieces_s_bend_left[(direction & 1)][trackSequence] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; if (direction == 0 || direction == 2) @@ -2974,16 +2974,13 @@ static void junior_rc_s_bend_left_paint_setup( switch (trackSequence) { case 0: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2998,15 +2995,15 @@ static void junior_rc_s_bend_left_paint_setup( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3034,7 +3031,7 @@ static void junior_rc_s_bend_left_paint_setup( /* rct2: 0x008AAE60, 0x0051BBC0, 0x0051BE06, 0x0051C04E, 0x0051C068 */ static void junior_rc_s_bend_right_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -3056,7 +3053,7 @@ static void junior_rc_s_bend_right_paint_setup( { 32, 20 }, }; - uint32_t imageId = junior_rc_track_pieces_s_bend_right[direction & 1][trackSequence] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = junior_rc_track_pieces_s_bend_right[direction & 1][trackSequence] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; if (direction == 0 || direction == 2) @@ -3078,16 +3075,13 @@ static void junior_rc_s_bend_right_paint_setup( switch (trackSequence) { case 0: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3102,15 +3096,15 @@ static void junior_rc_s_bend_right_paint_setup( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3138,11 +3132,11 @@ static void junior_rc_s_bend_right_paint_setup( /** rct2: 0x008AAEB0, 0x0051C0E0, 0x0051C2C1, 0x0051C47F, 0x0051C61D */ static void junior_rc_right_quarter_turn_3_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, nullptr); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); @@ -3156,7 +3150,7 @@ static void junior_rc_right_quarter_turn_3_tiles_paint_setup( case 0: case 3: metal_a_supports_paint_setup( - session, supportType[(direction & 1)][trackSequence], 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[(direction & 1)][trackSequence], 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3180,7 +3174,7 @@ static void junior_rc_right_quarter_turn_3_tiles_paint_setup( /** rct2: 0x008AAEA0 */ static void junior_rc_left_quarter_turn_3_tiles_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3235,7 +3229,7 @@ static constexpr const CoordsXYZ junior_rc_right_quarter_turn_3_tiles_bank_offse /** rct2: 0x008AA0D0, 0x00523EA0, 0x005240CC, 0x0052430F, 0x00524500*/ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t thickness[4][4] = { @@ -3246,19 +3240,19 @@ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup( }; track_paint_util_right_quarter_turn_3_tiles_paint( - session, thickness[direction][trackSequence], height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness[direction][trackSequence], height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_banked_quarter_turn_3_tiles, nullptr, junior_rc_right_quarter_turn_3_tiles_bank_bound_lengths, junior_rc_right_quarter_turn_3_tiles_bank_offsets); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); if (direction == 1 && trackSequence == 3) { - uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_NW_SW_PART_2_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_NW_SW_PART_2_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height }); } else if (direction == 3 && trackSequence == 0) { - uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_SE_NE_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_BANKED_QUARTER_TURN_3_TILES_SE_NE_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height }); } @@ -3271,7 +3265,7 @@ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup( case 0: case 3: metal_a_supports_paint_setup( - session, supportType[(direction & 1)][trackSequence], 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[(direction & 1)][trackSequence], 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3294,7 +3288,7 @@ static void junior_rc_right_quarter_turn_3_tiles_bank_paint_setup( } void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { uint32_t imageId = 0; @@ -3306,14 +3300,14 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( { case 0: imageId = junior_rc_track_pieces_right_quarter_turn_3_tiles_25_deg_up[EnumValue(chainType)][direction][0] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; offset = defaultRightQuarterTurn3TilesOffsets[direction][0]; boundsLength = defaultRightQuarterTurn3TilesBoundLengths[direction][0]; boundsOffset = offset; break; case 3: imageId = junior_rc_track_pieces_right_quarter_turn_3_tiles_25_deg_up[EnumValue(chainType)][direction][1] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; offset = defaultRightQuarterTurn3TilesOffsets[direction][2]; boundsLength = defaultRightQuarterTurn3TilesBoundLengths[direction][2]; boundsOffset = offset; @@ -3353,7 +3347,7 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( case 0: case 3: metal_a_supports_paint_setup( - session, supportType[(direction & 1)][trackSequence], 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[(direction & 1)][trackSequence], 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3376,7 +3370,7 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( } void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { uint32_t imageId = 0; @@ -3388,14 +3382,14 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( { case 0: imageId = junior_rc_track_pieces_right_quarter_turn_3_tiles_25_deg_down[EnumValue(chainType)][direction][0] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; offset = defaultRightQuarterTurn3TilesOffsets[direction][0]; boundsLength = defaultRightQuarterTurn3TilesBoundLengths[direction][0]; boundsOffset = offset; break; case 3: imageId = junior_rc_track_pieces_right_quarter_turn_3_tiles_25_deg_down[EnumValue(chainType)][direction][1] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; offset = defaultRightQuarterTurn3TilesOffsets[direction][2]; boundsLength = defaultRightQuarterTurn3TilesBoundLengths[direction][2]; boundsOffset = offset; @@ -3436,7 +3430,7 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( case 0: case 3: metal_a_supports_paint_setup( - session, supportType[(direction & 1)][trackSequence], 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[(direction & 1)][trackSequence], 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3460,7 +3454,7 @@ void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( /** rct2: 0x008AA0C0 */ static void junior_rc_left_quarter_turn_3_tiles_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3470,7 +3464,7 @@ static void junior_rc_left_quarter_turn_3_tiles_bank_paint_setup( /** rct2: 0x008AAED0, 0x0051C83C, 0x0051C9EC, 0x0051CB76, 0x0051CCDC*/ static void junior_rc_right_quarter_turn_3_tiles_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -3481,7 +3475,7 @@ static void junior_rc_right_quarter_turn_3_tiles_25_deg_up_paint_setup( /** rct2: 0x008AAEF0, 0x0051CEC8, 0x0051D078, 0x0051D202, 0x0051D368*/ static void junior_rc_right_quarter_turn_3_tiles_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -3499,7 +3493,7 @@ static constexpr const uint8_t junior_rc_left_quarter_turn_3_tiles_to_right_turn /** rct2: 0x008AAEC0 */ static void junior_rc_left_quarter_turn_3_tiles_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = junior_rc_left_quarter_turn_3_tiles_to_right_turn_map[trackSequence]; @@ -3509,7 +3503,7 @@ static void junior_rc_left_quarter_turn_3_tiles_25_deg_up_paint_setup( /** rct2: 0x008AAEE0 */ static void junior_rc_left_quarter_turn_3_tiles_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = junior_rc_left_quarter_turn_3_tiles_to_right_turn_map[trackSequence]; @@ -3519,7 +3513,7 @@ static void junior_rc_left_quarter_turn_3_tiles_25_deg_down_paint_setup( /** rct2: 0x008AB0F0, 0x0052B3A4, 0x0052B5F8, 0x0052B863, 0x0052BA78 */ static void junior_rc_right_half_banked_helix_up_small_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t thickness[2] = { 1, 26 }; @@ -3531,7 +3525,7 @@ static void junior_rc_right_half_banked_helix_up_small_paint_setup( direction &= 3; } track_paint_util_right_helix_up_small_quarter_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_small_quarter_tiles, nullptr, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets); @@ -3539,13 +3533,13 @@ static void junior_rc_right_half_banked_helix_up_small_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 2, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } else if (trackSequence == 3) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 6, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 && trackSequence == 0) @@ -3587,7 +3581,7 @@ static void junior_rc_right_half_banked_helix_up_small_paint_setup( /** rct2: 0x008AB110, 0x0052BD80, 0x0052BFD4, 0x0052C23B, 0x0052C450 */ static void junior_rc_right_half_banked_helix_down_small_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t thickness[2] = { 1, 26 }; @@ -3599,7 +3593,7 @@ static void junior_rc_right_half_banked_helix_down_small_paint_setup( direction &= 3; } track_paint_util_right_helix_up_small_quarter_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_small_quarter_tiles, nullptr, defaultRightHelixUpSmallQuarterBoundLengths, defaultRightHelixUpSmallQuarterBoundOffsets); @@ -3607,13 +3601,13 @@ static void junior_rc_right_half_banked_helix_down_small_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 6, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } else if (trackSequence == 3) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 2, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 && trackSequence == 0) @@ -3655,7 +3649,7 @@ static void junior_rc_right_half_banked_helix_down_small_paint_setup( /** rct2: 0x008AB0E0 */ static void junior_rc_left_half_banked_helix_up_small_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence > 3) @@ -3671,7 +3665,7 @@ static void junior_rc_left_half_banked_helix_up_small_paint_setup( /** rct2: 0x008AB100 */ static void junior_rc_left_half_banked_helix_down_small_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence > 3) @@ -3687,7 +3681,7 @@ static void junior_rc_left_half_banked_helix_down_small_paint_setup( /** rct2: 0x008AB130, 0x0052C7BC, 0x0052CB6B, 0x0052CF32, 0x0052D2B3 */ static void junior_rc_right_half_banked_helix_up_large_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t thickness[2] = { 1, 26 }; @@ -3699,7 +3693,7 @@ static void junior_rc_right_half_banked_helix_up_large_paint_setup( direction &= 3; } track_paint_util_right_helix_up_large_quarter_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_up_large_quarter_tiles, nullptr, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets); @@ -3707,13 +3701,13 @@ static void junior_rc_right_half_banked_helix_up_large_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 1, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } else if (trackSequence == 6) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 7, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 && trackSequence == 0) @@ -3773,7 +3767,7 @@ static void junior_rc_right_half_banked_helix_up_large_paint_setup( /** rct2: 0x008AB150, 0x0052D778, 0x0052DB27, 0x0052DEEA, 0x0052E26B */ static void junior_rc_right_half_banked_helix_down_large_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t thickness[2] = { 1, 26 }; @@ -3785,7 +3779,7 @@ static void junior_rc_right_half_banked_helix_down_large_paint_setup( direction &= 3; } track_paint_util_right_helix_up_large_quarter_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_half_banked_helix_down_large_quarter_tiles, nullptr, defaultRightHelixUpLargeQuarterBoundLengths, defaultRightHelixUpLargeQuarterBoundOffsets); @@ -3793,13 +3787,13 @@ static void junior_rc_right_half_banked_helix_down_large_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 7, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } else if (trackSequence == 6) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK : METAL_SUPPORTS_FORK_ALT, 4, 1, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 && trackSequence == 0) @@ -3859,7 +3853,7 @@ static void junior_rc_right_half_banked_helix_down_large_paint_setup( /** rct2: 0x008AB120 */ static void junior_rc_left_half_banked_helix_up_large_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence > 6) @@ -3875,7 +3869,7 @@ static void junior_rc_left_half_banked_helix_up_large_paint_setup( /** rct2: 0x008AB140 */ static void junior_rc_left_half_banked_helix_down_large_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence > 6) @@ -3893,12 +3887,12 @@ static void junior_rc_left_half_banked_helix_down_large_paint_setup( * rct2: 0x008AAF00, 0x0051851C, 0x005185D8 */ static void junior_rc_brake_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; - image_id = junior_rc_track_pieces_brake[direction] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_brake[direction] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 6, 0, height }, { 20, 32, 1 }); @@ -3912,10 +3906,10 @@ static void junior_rc_brake_paint_setup( paint_util_push_tunnel_left(session, height, TUNNEL_0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -3927,14 +3921,14 @@ static void junior_rc_brake_paint_setup( * rct2: 0x008AB280, 0x00518694, 0x00518759 */ static void junior_rc_block_brake_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id; bool isBraked = trackElement.BlockBrakeClosed(); - image_id = junior_rc_track_pieces_block_brake[isBraked][direction] | session->TrackColours[SCHEME_TRACK]; + image_id = junior_rc_track_pieces_block_brake[isBraked][direction] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, image_id, { 6, 0, height }, { 20, 32, 1 }); @@ -3948,10 +3942,10 @@ static void junior_rc_block_brake_paint_setup( paint_util_push_tunnel_left(session, height, TUNNEL_0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { int32_t edi = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, edi, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, edi, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -3961,11 +3955,11 @@ static void junior_rc_block_brake_paint_setup( /** rct2: 0x008AAF80 */ static void junior_rc_left_eighth_to_diag_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_eighth_to_diag_tiles_paint( - session, defaultEighthToDiagThickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, defaultEighthToDiagThickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag, nullptr, defaultLeftEighthToDiagBoundLengths, defaultLeftEighthToDiagBoundOffsets); @@ -3974,21 +3968,19 @@ static void junior_rc_left_eighth_to_diag_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4027,11 +4019,11 @@ static void junior_rc_left_eighth_to_diag_paint_setup( /** rct2: 0x008AAF90 */ static void junior_rc_right_eighth_to_diag_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_eighth_to_diag_tiles_paint( - session, defaultEighthToDiagThickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, defaultEighthToDiagThickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag, nullptr, defaultRightEighthToDiagBoundLengths, defaultRightEighthToDiagBoundOffsets); @@ -4040,21 +4032,19 @@ static void junior_rc_right_eighth_to_diag_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4093,7 +4083,7 @@ static void junior_rc_right_eighth_to_diag_paint_setup( /** rct2: 0x008AAFA0 */ static void junior_rc_left_eighth_to_orthogonal_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -4103,7 +4093,7 @@ static void junior_rc_left_eighth_to_orthogonal_paint_setup( /** rct2: 0x008AAFB0 */ static void junior_rc_right_eighth_to_orthogonal_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -4194,12 +4184,12 @@ static constexpr const int8_t 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, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_eighth_to_diag_tiles_paint( session, junior_rc_left_eighth_to_diag_bank_thickness, height, direction, trackSequence, - session->TrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag_bank, nullptr, + session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_left_eight_to_diag_bank, nullptr, junior_rc_left_eighth_to_diag_bank_bound_lengths, junior_rc_left_eighth_to_diag_bank_bound_offsets); switch (trackSequence) @@ -4207,21 +4197,19 @@ static void junior_rc_left_eighth_to_diag_bank_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4341,12 +4329,12 @@ static constexpr const int8_t 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, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_eighth_to_diag_tiles_paint( session, junior_rc_right_eighth_to_diag_bank_thickness, height, direction, trackSequence, - session->TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag_bank, nullptr, + session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_right_eight_to_diag_bank, nullptr, junior_rc_right_eighth_to_diag_bank_bound_lengths, junior_rc_right_eighth_to_diag_bank_bound_offsets); switch (trackSequence) @@ -4354,21 +4342,19 @@ static void junior_rc_right_eighth_to_diag_bank_paint_setup( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4407,7 +4393,7 @@ static void junior_rc_right_eighth_to_diag_bank_paint_setup( /** rct2: 0x008AB180 */ static void junior_rc_left_eighth_to_orthogonal_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -4417,7 +4403,7 @@ static void junior_rc_left_eighth_to_orthogonal_bank_paint_setup( /** rct2: 0x008AB190 */ static void junior_rc_right_eighth_to_orthogonal_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -4440,18 +4426,18 @@ static constexpr const uint8_t junior_rc_diag_support_segment[] = { }; void junior_rc_paint_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); 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, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4460,18 +4446,18 @@ void junior_rc_paint_track_diag_flat( } void junior_rc_paint_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (trackSequence == 3) { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 8, height, session->TrackColours[SCHEME_SUPPORTS]); + 8, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4480,11 +4466,11 @@ void junior_rc_paint_track_diag_25_deg_up( } void junior_rc_paint_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4492,7 +4478,7 @@ void junior_rc_paint_track_diag_flat_to_25_deg_up( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4501,14 +4487,14 @@ void junior_rc_paint_track_diag_flat_to_25_deg_up( } void junior_rc_paint_track_diag_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { // There is no specific chain for the Water Coaster, use the Junior RC chain instead chainType = std::min(JuniorRcChainType::FrictionWheels, chainType); track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4516,7 +4502,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_up( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height + 6, session->TrackColours[SCHEME_SUPPORTS]); + 0, height + 6, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4525,11 +4511,11 @@ void junior_rc_paint_track_diag_flat_to_60_deg_up( } void junior_rc_paint_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_flat[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4537,7 +4523,7 @@ void junior_rc_paint_track_diag_25_deg_up_to_flat( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4546,14 +4532,14 @@ void junior_rc_paint_track_diag_25_deg_up_to_flat( } void junior_rc_paint_track_diag_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { // There is no specific chain for the Water Coaster, use the Junior RC chain instead chainType = std::min(JuniorRcChainType::FrictionWheels, chainType); track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_flat[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4561,7 +4547,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_flat( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height + 13, session->TrackColours[SCHEME_SUPPORTS]); + 4, height + 13, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4570,11 +4556,11 @@ void junior_rc_paint_track_diag_60_deg_up_to_flat( } void junior_rc_paint_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4582,7 +4568,7 @@ void junior_rc_paint_track_diag_25_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 8, height, session->TrackColours[SCHEME_SUPPORTS]); + 8, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4591,11 +4577,11 @@ void junior_rc_paint_track_diag_25_deg_down( } void junior_rc_paint_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_25_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4603,7 +4589,7 @@ void junior_rc_paint_track_diag_flat_to_25_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4612,14 +4598,14 @@ void junior_rc_paint_track_diag_flat_to_25_deg_down( } void junior_rc_paint_track_diag_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { // There is no specific chain for the Water Coaster, use the Junior RC chain instead chainType = std::min(JuniorRcChainType::FrictionWheels, chainType); track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_60_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4627,7 +4613,7 @@ void junior_rc_paint_track_diag_flat_to_60_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height + 7, session->TrackColours[SCHEME_SUPPORTS]); + 4, height + 7, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4636,11 +4622,11 @@ void junior_rc_paint_track_diag_flat_to_60_deg_down( } void junior_rc_paint_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_flat[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4648,7 +4634,7 @@ void junior_rc_paint_track_diag_25_deg_down_to_flat( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4657,14 +4643,14 @@ void junior_rc_paint_track_diag_25_deg_down_to_flat( } void junior_rc_paint_track_diag_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { // There is no specific chain for the Water Coaster, use the Junior RC chain instead chainType = std::min(JuniorRcChainType::FrictionWheels, chainType); track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_flat[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -4672,7 +4658,7 @@ void junior_rc_paint_track_diag_60_deg_down_to_flat( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4682,7 +4668,7 @@ void junior_rc_paint_track_diag_60_deg_down_to_flat( /** rct2: 0x008AAF10 */ static void junior_rc_diag_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4693,7 +4679,7 @@ static void junior_rc_diag_flat_paint_setup( /** rct2: 0x008AAF40 */ static void junior_rc_diag_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4704,7 +4690,7 @@ static void junior_rc_diag_25_deg_up_paint_setup( /** rct2: 0x008AAF20 */ static void junior_rc_diag_flat_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4714,7 +4700,7 @@ static void junior_rc_diag_flat_to_25_deg_up_paint_setup( } static void junior_rc_diag_flat_to_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4725,7 +4711,7 @@ static void junior_rc_diag_flat_to_60_deg_up_paint_setup( /** rct2: 0x008AAF30 */ static void junior_rc_diag_25_deg_up_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4735,7 +4721,7 @@ static void junior_rc_diag_25_deg_up_to_flat_paint_setup( } static void junior_rc_diag_60_deg_up_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4746,7 +4732,7 @@ static void junior_rc_diag_60_deg_up_to_flat_paint_setup( /** rct2: 0x008AAF70 */ static void junior_rc_diag_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4757,7 +4743,7 @@ static void junior_rc_diag_25_deg_down_paint_setup( /** rct2: 0x008AAF50 */ static void junior_rc_diag_flat_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4767,7 +4753,7 @@ static void junior_rc_diag_flat_to_25_deg_down_paint_setup( } static void junior_rc_diag_flat_to_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4778,7 +4764,7 @@ static void junior_rc_diag_flat_to_60_deg_down_paint_setup( /** rct2: 0x008AAF60 */ static void junior_rc_diag_25_deg_down_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4788,7 +4774,7 @@ static void junior_rc_diag_25_deg_down_to_flat_paint_setup( } static void junior_rc_diag_60_deg_down_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -4799,16 +4785,16 @@ static void junior_rc_diag_60_deg_down_to_flat_paint_setup( /** rct2: 0x008AB1C0 */ static void junior_rc_diag_flat_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 27 }); } @@ -4816,7 +4802,7 @@ static void junior_rc_diag_flat_to_left_bank_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4826,16 +4812,16 @@ static void junior_rc_diag_flat_to_left_bank_paint_setup( /** rct2: 0x008AB1D0 */ static void junior_rc_diag_flat_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_flat_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 27 }); } @@ -4843,7 +4829,7 @@ static void junior_rc_diag_flat_to_right_bank_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4853,16 +4839,16 @@ static void junior_rc_diag_flat_to_right_bank_paint_setup( /** rct2: 0x008AB1E0 */ static void junior_rc_diag_left_bank_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_RIGHT_BANK_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 27 }); } @@ -4870,7 +4856,7 @@ static void junior_rc_diag_left_bank_to_flat_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4880,16 +4866,16 @@ static void junior_rc_diag_left_bank_to_flat_paint_setup( /** rct2: 0x008AB1F0 */ static void junior_rc_diag_right_bank_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_flat, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_FLAT_TO_LEFT_BANK_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 27 }); } @@ -4897,7 +4883,7 @@ static void junior_rc_diag_right_bank_to_flat_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4907,16 +4893,16 @@ static void junior_rc_diag_right_bank_to_flat_paint_setup( /** rct2: 0x008AB220 */ static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -4924,7 +4910,7 @@ static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4934,16 +4920,16 @@ static void junior_rc_diag_left_bank_to_25_deg_up_paint_setup( /** rct2: 0x008AB230 */ static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_up, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -4951,7 +4937,7 @@ static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4961,16 +4947,16 @@ static void junior_rc_diag_right_bank_to_25_deg_up_paint_setup( /** rct2: 0x008AB200 */ static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -4978,7 +4964,7 @@ static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -4988,16 +4974,16 @@ static void junior_rc_diag_25_deg_up_to_left_bank_paint_setup( /** rct2: 0x008AB210 */ static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -5005,7 +4991,7 @@ static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5015,16 +5001,16 @@ static void junior_rc_diag_25_deg_up_to_right_bank_paint_setup( /** rct2: 0x008AB200 */ static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_RIGHT_BANK_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -5032,7 +5018,7 @@ static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5042,16 +5028,16 @@ static void junior_rc_diag_left_bank_to_25_deg_down_paint_setup( /** rct2: 0x008AB210 */ static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank_to_25_deg_down, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_25_DEG_UP_TO_LEFT_BANK_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -5059,7 +5045,7 @@ static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 4, height, session->TrackColours[SCHEME_SUPPORTS]); + 4, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5069,16 +5055,16 @@ static void junior_rc_diag_right_bank_to_25_deg_down_paint_setup( /** rct2: 0x008AB220 */ static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 0 && trackSequence == 1) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_RIGHT_BANK_TO_25_DEG_UP_E_W_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -5086,7 +5072,7 @@ static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5096,16 +5082,16 @@ static void junior_rc_diag_25_deg_down_to_left_bank_paint_setup( /** rct2: 0x008AB230 */ static void junior_rc_diag_25_deg_down_to_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (direction == 2 && trackSequence == 2) { - uint32_t imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_JUNIOR_RC_DIAG_LEFT_BANK_TO_25_DEG_UP_W_E_PART_0_2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 0 }, { -16, -16, height + 35 }); } @@ -5113,7 +5099,7 @@ static void junior_rc_diag_25_deg_down_to_right_bank_paint_setup( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5137,12 +5123,12 @@ static constexpr const CoordsXYZ junior_rc_diag_right_bank_bound_offsets[4] = { /** rct2: 0x008AB1A0 */ static void junior_rc_diag_left_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t thickness = direction == 0 ? 0 : 1; track_paint_util_diag_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_left_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_left_bank_bound_offsets); @@ -5150,7 +5136,7 @@ static void junior_rc_diag_left_bank_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5160,12 +5146,12 @@ static void junior_rc_diag_left_bank_paint_setup( /** rct2: 0x008AB1B0 */ static void junior_rc_diag_right_bank_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t thickness = direction == 2 ? 0 : 1; track_paint_util_diag_tiles_paint( - session, thickness, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, thickness, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_right_bank, defaultDiagTileOffsets, defaultDiagBoundLengths, junior_rc_diag_right_bank_bound_offsets); @@ -5173,7 +5159,7 @@ static void junior_rc_diag_right_bank_paint_setup( { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5210,10 +5196,10 @@ static constexpr const CoordsXY junior_rc_60_deg_up_bound_lengths[4] = { }; void junior_rc_paint_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { - uint32_t image_id = session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_60_deg_up[EnumValue(chainType)][direction]; @@ -5239,11 +5225,11 @@ void junior_rc_paint_track_60_deg_up( } static constexpr int8_t support[4] = { 35, 29, 25, 32 }; - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, support[direction], height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5252,7 +5238,7 @@ void junior_rc_paint_track_60_deg_up( } static void junior_rc_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5262,7 +5248,7 @@ static void junior_rc_60_deg_up_paint_setup( } static void junior_rc_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_60_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -5290,10 +5276,10 @@ static constexpr const CoordsXY junior_rc_25_deg_up_to_60_deg_up_bound_offsets[4 }; void junior_rc_paint_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { - uint32_t image_id = session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_25_deg_up_to_60_deg_up[EnumValue(chainType)][direction][0]; @@ -5305,7 +5291,7 @@ void junior_rc_paint_track_25_deg_up_to_60_deg_up( if (junior_rc_track_pieces_25_deg_up_to_60_deg_up[EnumValue(chainType)][direction][1] != 0) { - image_id = session->TrackColours[SCHEME_TRACK]; + image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_25_deg_up_to_60_deg_up[EnumValue(chainType)][direction][1]; @@ -5333,11 +5319,11 @@ void junior_rc_paint_track_25_deg_up_to_60_deg_up( } static constexpr int8_t support[4] = { 12, 12, 12, 14 }; - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, support[direction], height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5346,7 +5332,7 @@ void junior_rc_paint_track_25_deg_up_to_60_deg_up( } static void junior_rc_25_deg_up_to_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5356,17 +5342,17 @@ static void junior_rc_25_deg_up_to_60_deg_up_paint_setup( } static void junior_rc_60_deg_down_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_25_deg_up_to_60_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } void junior_rc_paint_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { - uint32_t image_id = session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_60_deg_up_to_25_deg_up[EnumValue(chainType)][direction][0]; @@ -5378,7 +5364,7 @@ void junior_rc_paint_track_60_deg_up_to_25_deg_up( if (junior_rc_track_pieces_60_deg_up_to_25_deg_up[EnumValue(chainType)][direction][1] != 0) { - image_id = session->TrackColours[SCHEME_TRACK]; + image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_60_deg_up_to_25_deg_up[EnumValue(chainType)][direction][1]; @@ -5405,11 +5391,11 @@ void junior_rc_paint_track_60_deg_up_to_25_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 20, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5418,7 +5404,7 @@ void junior_rc_paint_track_60_deg_up_to_25_deg_up( } static void junior_rc_60_deg_up_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5428,25 +5414,25 @@ static void junior_rc_60_deg_up_to_25_deg_up_paint_setup( } static void junior_rc_25_deg_down_to_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_60_deg_up_to_25_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } void junior_rc_paint_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); if (trackSequence == 3) { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 36, height, session->TrackColours[SCHEME_SUPPORTS]); + 36, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5455,11 +5441,11 @@ void junior_rc_paint_track_diag_60_deg_up( } void junior_rc_paint_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -5467,7 +5453,7 @@ void junior_rc_paint_track_diag_60_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 28, height, session->TrackColours[SCHEME_SUPPORTS]); + 28, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5476,11 +5462,11 @@ void junior_rc_paint_track_diag_60_deg_down( } void junior_rc_paint_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_up_to_60_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -5488,7 +5474,7 @@ void junior_rc_paint_track_diag_25_deg_up_to_60_deg_up( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 16, height, session->TrackColours[SCHEME_SUPPORTS]); + 16, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5497,7 +5483,7 @@ void junior_rc_paint_track_diag_25_deg_up_to_60_deg_up( } void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { if (direction == 1 && trackSequence == 3) @@ -5505,13 +5491,13 @@ void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( PaintAddImageAsParent( session, junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[EnumValue(chainType)][direction] - | session->TrackColours[SCHEME_TRACK], + | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 16, 16, 1 }, { 0, 0, height }); } else { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_up_to_25_deg_up[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); } @@ -5520,7 +5506,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 21, height, session->TrackColours[SCHEME_SUPPORTS]); + 21, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5529,7 +5515,7 @@ void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( } void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { if (direction == 3 && trackSequence == 0) @@ -5537,13 +5523,13 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( PaintAddImageAsParent( session, junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[EnumValue(chainType)][direction] - | session->TrackColours[SCHEME_TRACK], + | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 16, 16, 1 }, { 0, 0, height }); } else { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_25_deg_down_to_60_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); } @@ -5552,7 +5538,7 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 17, height, session->TrackColours[SCHEME_SUPPORTS]); + 17, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5561,11 +5547,11 @@ void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( } void junior_rc_paint_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType) { track_paint_util_diag_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], junior_rc_track_pieces_diag_60_deg_down_to_25_deg_down[EnumValue(chainType)], defaultDiagTileOffsets, defaultDiagBoundLengths, nullptr); @@ -5573,7 +5559,7 @@ void junior_rc_paint_track_diag_60_deg_down_to_25_deg_down( { metal_b_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, junior_rc_diag_support_segment[direction], - 8, height, session->TrackColours[SCHEME_SUPPORTS]); + 8, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = junior_rc_diag_blocked_segments[trackSequence]; @@ -5582,7 +5568,7 @@ void junior_rc_paint_track_diag_60_deg_down_to_25_deg_down( } static void junior_rc_diag_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5592,7 +5578,7 @@ static void junior_rc_diag_60_deg_up_paint_setup( } static void junior_rc_diag_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5602,7 +5588,7 @@ static void junior_rc_diag_60_deg_down_paint_setup( } static void junior_rc_diag_25_deg_up_to_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5612,7 +5598,7 @@ static void junior_rc_diag_25_deg_up_to_60_deg_up_paint_setup( } static void junior_rc_diag_60_deg_up_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5622,7 +5608,7 @@ static void junior_rc_diag_60_deg_up_to_25_deg_up_paint_setup( } static void junior_rc_diag_25_deg_down_to_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5632,7 +5618,7 @@ static void junior_rc_diag_25_deg_down_to_60_deg_down_paint_setup( } static void junior_rc_diag_60_deg_down_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5677,10 +5663,10 @@ static constexpr const CoordsXY junior_rc_60_deg_up_to_flat_tile_offsets[4][2] = }; static void junior_rc_flat_to_60_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t image_id = session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = session.TrackColours[SCHEME_TRACK]; bool isChained = trackElement.HasChain(); @@ -5693,7 +5679,7 @@ static void junior_rc_flat_to_60_deg_up_paint_setup( if (junior_rc_track_pieces_flat_to_60_deg_up[isChained][direction][1] != 0) { - image_id = session->TrackColours[SCHEME_TRACK]; + image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_flat_to_60_deg_up[isChained][direction][1]; @@ -5720,11 +5706,11 @@ static void junior_rc_flat_to_60_deg_up_paint_setup( } static constexpr int8_t support[4] = { 12, 12, 12, 14 }; - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, support[direction], height - 7, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5733,17 +5719,17 @@ static void junior_rc_flat_to_60_deg_up_paint_setup( } static void junior_rc_60_deg_down_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_flat_to_60_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void junior_rc_60_deg_up_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t image_id = session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = session.TrackColours[SCHEME_TRACK]; bool isChained = trackElement.HasChain(); @@ -5756,7 +5742,7 @@ static void junior_rc_60_deg_up_to_flat_paint_setup( if (junior_rc_track_pieces_60_deg_up_to_flat[isChained][direction][1] != 0) { - image_id = session->TrackColours[SCHEME_TRACK]; + image_id = session.TrackColours[SCHEME_TRACK]; image_id |= junior_rc_track_pieces_60_deg_up_to_flat[isChained][direction][1]; @@ -5782,11 +5768,11 @@ static void junior_rc_60_deg_up_to_flat_paint_setup( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK, 4, 20, height - 5, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5795,7 +5781,7 @@ static void junior_rc_60_deg_up_to_flat_paint_setup( } static void junior_rc_flat_to_60_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_60_deg_up_to_flat_paint_setup(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5803,7 +5789,7 @@ static void junior_rc_flat_to_60_deg_down_paint_setup( /* rct2: 0x00518394 */ static void junior_rc_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5814,7 +5800,7 @@ static void junior_rc_flat_paint_setup( /* rct2: 0x00515629, 0x00514D22, 0x005151B9 */ static void paint_junior_rc_station_track( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_station(session, ride, trackSequence, direction, height, trackElement, RIDE_TYPE_JUNIOR_ROLLER_COASTER); @@ -5822,7 +5808,7 @@ static void paint_junior_rc_station_track( /* rct2: 0x0051881E */ static void junior_rc_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5833,7 +5819,7 @@ static void junior_rc_25_deg_up_paint_setup( /* rct2: 0x00518B42 */ static void junior_rc_flat_to_25_deg_up_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5844,7 +5830,7 @@ static void junior_rc_flat_to_25_deg_up_paint_setup( /* rct2: 0x00518E56 */ static void junior_rc_25_deg_up_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -5855,7 +5841,7 @@ static void junior_rc_25_deg_up_to_flat_paint_setup( /* rct2: 0x005189B0 */ static void junior_rc_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_25_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5863,7 +5849,7 @@ static void junior_rc_25_deg_down_paint_setup( /* rct2: 0x00518FE8 */ static void junior_rc_flat_to_25_deg_down_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_25_deg_up_to_flat_paint_setup(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5871,35 +5857,35 @@ static void junior_rc_flat_to_25_deg_down_paint_setup( /* rct2: 0x00518CCC */ static void junior_rc_25_deg_down_to_flat_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_flat_to_25_deg_up_paint_setup(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void junior_rc_booster_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction & 1) { PaintAddImageAsParent( - session, SPR_JUNIOR_RC_BOOSTER_NE_SW | session->TrackColours[SCHEME_TRACK], { 0, 0, height }, { 20, 32, 1 }); + session, SPR_JUNIOR_RC_BOOSTER_NE_SW | session.TrackColours[SCHEME_TRACK], { 0, 0, height }, { 20, 32, 1 }); paint_util_push_tunnel_right(session, height, TUNNEL_0); } else { PaintAddImageAsParent( - session, SPR_JUNIOR_RC_BOOSTER_NW_SE | session->TrackColours[SCHEME_TRACK], { 0, 0, height }, { 32, 20, 1 }); + session, SPR_JUNIOR_RC_BOOSTER_NW_SE | session.TrackColours[SCHEME_TRACK], { 0, 0, height }, { 32, 20, 1 }); paint_util_push_tunnel_left(session, height, TUNNEL_0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { uint8_t supportType = (direction & 1) ? METAL_SUPPORTS_FORK_ALT : METAL_SUPPORTS_FORK; - metal_a_supports_paint_setup(session, supportType, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, supportType, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -5908,10 +5894,10 @@ static void junior_rc_booster_paint_setup( } static void junior_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = junior_rc_track_pieces_flat[0][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = junior_rc_track_pieces_flat[0][direction] | session.TrackColours[SCHEME_TRACK]; constexpr const int8_t photoCameraOffset = -1; switch (direction) @@ -5920,36 +5906,36 @@ static void junior_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height + photoCameraOffset); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height + photoCameraOffset); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height + photoCameraOffset); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height + photoCameraOffset); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height + photoCameraOffset, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height + photoCameraOffset, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; } diff --git a/src/openrct2/ride/coaster/JuniorRollerCoaster.h b/src/openrct2/ride/coaster/JuniorRollerCoaster.h index ada3cfc5b4..12187afc8c 100644 --- a/src/openrct2/ride/coaster/JuniorRollerCoaster.h +++ b/src/openrct2/ride/coaster/JuniorRollerCoaster.h @@ -23,93 +23,93 @@ struct paint_session; struct TrackElement; void junior_rc_paint_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, uint8_t rideType); void junior_rc_paint_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); void junior_rc_paint_track_diag_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, uint16_t height, const TrackElement& trackElement, JuniorRcChainType chainType); diff --git a/src/openrct2/ride/coaster/LayDownRollerCoaster.cpp b/src/openrct2/ride/coaster/LayDownRollerCoaster.cpp index 61a2357e3a..a709b4909f 100644 --- a/src/openrct2/ride/coaster/LayDownRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/LayDownRollerCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x0082491C */ static void lay_down_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -31,25 +31,25 @@ static void lay_down_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16226, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16226, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16227, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16227, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16228, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16228, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16229, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16229, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -59,18 +59,18 @@ static void lay_down_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -87,13 +87,13 @@ static void lay_down_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26557, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26557, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26558, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26558, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -105,13 +105,13 @@ static void lay_down_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } @@ -119,10 +119,10 @@ static void lay_down_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -132,7 +132,7 @@ static void lay_down_rc_track_flat( /** rct2: 0x00824B8C, 0x00824B9C, 0x00824BAC */ static void lay_down_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.IsInverted()) @@ -145,15 +145,15 @@ static void lay_down_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, - 6, height + 24); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 24, 0, 6, + height + 24); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, - 0, 6, height + 24); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, + 6, height + 24); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); } @@ -169,18 +169,18 @@ static void lay_down_rc_track_station( if (trackElement.GetTrackType() == TrackElemType::EndStation) { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); } @@ -190,7 +190,7 @@ static void lay_down_rc_track_station( /** rct2: 0x0082492C */ static void lay_down_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -201,25 +201,25 @@ static void lay_down_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16314, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16314, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16315, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16315, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16316, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16316, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16317, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16317, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -228,25 +228,25 @@ static void lay_down_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16286, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16286, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16287, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16287, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16288, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16288, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16289, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16289, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -269,22 +269,22 @@ static void lay_down_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26621, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26621, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26622, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26622, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26623, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26623, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26624, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26624, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -295,22 +295,22 @@ static void lay_down_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26569, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26569, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26570, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26570, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26571, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26571, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26572, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26572, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } @@ -318,25 +318,25 @@ static void lay_down_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -355,7 +355,7 @@ static void lay_down_rc_track_25_deg_up( /** rct2: 0x0082493C */ static void lay_down_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -366,27 +366,25 @@ static void lay_down_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16330, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16330, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16331, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16331, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16332, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16332, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16333, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16333, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -395,27 +393,25 @@ static void lay_down_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16302, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16302, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16303, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16303, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16304, 0, 0, 32, 1, 98, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16304, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16305, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16305, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -436,22 +432,22 @@ static void lay_down_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26585, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26585, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26586, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26586, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26587, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26587, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26588, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26588, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; } @@ -471,7 +467,7 @@ static void lay_down_rc_track_60_deg_up( /** rct2: 0x0082494C */ static void lay_down_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -482,25 +478,25 @@ static void lay_down_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16306, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16306, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16307, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16307, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16308, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16308, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16309, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16309, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -509,25 +505,25 @@ static void lay_down_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16278, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16278, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16279, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16279, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16280, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16280, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16281, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16281, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -550,22 +546,22 @@ static void lay_down_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26613, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26613, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26614, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26614, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26615, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26615, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26616, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26616, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -576,22 +572,22 @@ static void lay_down_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26561, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26561, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26562, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26562, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26563, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26563, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26564, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26564, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -599,25 +595,25 @@ static void lay_down_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -636,7 +632,7 @@ static void lay_down_rc_track_flat_to_25_deg_up( /** rct2: 0x0082495C */ static void lay_down_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -647,31 +643,29 @@ static void lay_down_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16318, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16318, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16319, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16319, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16322, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16322, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16320, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16320, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16323, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16323, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16321, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16321, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -680,31 +674,29 @@ static void lay_down_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16290, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16290, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16291, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16291, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16294, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16294, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16292, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16292, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16295, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16295, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16293, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16293, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -725,28 +717,28 @@ static void lay_down_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26573, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26573, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26577, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26577, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26574, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26574, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26578, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26578, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26575, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26575, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26576, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26576, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -766,7 +758,7 @@ static void lay_down_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x0082496C */ static void lay_down_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -777,31 +769,29 @@ static void lay_down_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16324, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16324, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16325, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16325, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16328, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16328, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16326, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16326, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16329, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16329, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16327, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16327, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -810,31 +800,29 @@ static void lay_down_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16296, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16296, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16297, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16297, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16300, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16300, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16298, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16298, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16301, 0, 0, 32, 1, 66, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16301, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16299, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16299, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -855,53 +843,53 @@ static void lay_down_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26579, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26579, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26583, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26583, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26580, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26580, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26584, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26584, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26581, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26581, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26582, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26582, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 65, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 65, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 65, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 65, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 65, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 65, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 65, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 65, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -920,7 +908,7 @@ static void lay_down_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x0082497C */ static void lay_down_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -931,25 +919,25 @@ static void lay_down_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16310, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16310, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16311, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16311, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16312, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16312, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16313, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16313, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -958,25 +946,25 @@ static void lay_down_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16282, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16282, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16283, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16283, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16284, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16284, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16285, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16285, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -999,22 +987,22 @@ static void lay_down_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26617, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26617, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26618, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26618, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26619, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26619, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26620, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26620, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -1025,22 +1013,22 @@ static void lay_down_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26565, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26565, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26566, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26566, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26567, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26567, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26568, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26568, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -1048,25 +1036,25 @@ static void lay_down_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1085,7 +1073,7 @@ static void lay_down_rc_track_25_deg_up_to_flat( /** rct2: 0x0082498C */ static void lay_down_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1093,7 +1081,7 @@ static void lay_down_rc_track_25_deg_down( /** rct2: 0x0082499C */ static void lay_down_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1101,7 +1089,7 @@ static void lay_down_rc_track_60_deg_down( /** rct2: 0x008249AC */ static void lay_down_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1109,7 +1097,7 @@ static void lay_down_rc_track_flat_to_25_deg_down( /** rct2: 0x008249BC */ static void lay_down_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1117,7 +1105,7 @@ static void lay_down_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008249CC */ static void lay_down_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1125,7 +1113,7 @@ static void lay_down_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008249DC */ static void lay_down_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1133,7 +1121,7 @@ static void lay_down_rc_track_25_deg_down_to_flat( /** rct2: 0x008249EC */ static void lay_down_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1145,27 +1133,27 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16343, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16343, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16348, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16348, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16353, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16353, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16338, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16338, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1183,22 +1171,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16342, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16342, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16347, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16347, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16352, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16352, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16337, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16337, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1214,22 +1202,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16341, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16341, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16346, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16346, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16351, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16351, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16336, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16336, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1246,22 +1234,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16340, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16340, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16345, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16345, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16350, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16350, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16335, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16335, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1277,27 +1265,27 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16339, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16339, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16344, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16344, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16349, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16349, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16334, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16334, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1323,22 +1311,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26694, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26694, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26699, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26699, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26704, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26704, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26689, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26689, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1348,7 +1336,7 @@ static void lay_down_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1364,23 +1352,23 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26693, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26693, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26698, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26698, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26703, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26703, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26688, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26688, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -1395,22 +1383,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26692, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26692, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26697, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26697, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26702, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26702, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26687, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26687, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -1427,23 +1415,23 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26691, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26691, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26696, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26696, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26701, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26701, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26686, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26686, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; } paint_util_set_segment_support_height( @@ -1458,22 +1446,22 @@ static void lay_down_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26690, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26690, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26695, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26695, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26700, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26700, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26685, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26685, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -1483,7 +1471,7 @@ static void lay_down_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1502,7 +1490,7 @@ static void lay_down_rc_track_left_quarter_turn_5( /** rct2: 0x008249FC */ static void lay_down_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1511,7 +1499,7 @@ static void lay_down_rc_track_right_quarter_turn_5( /** rct2: 0x00824A0C */ static void lay_down_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1520,29 +1508,29 @@ static void lay_down_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1555,22 +1543,22 @@ static void lay_down_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1579,10 +1567,10 @@ static void lay_down_rc_track_flat_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1592,7 +1580,7 @@ static void lay_down_rc_track_flat_to_left_bank( /** rct2: 0x00824A1C */ static void lay_down_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1601,29 +1589,29 @@ static void lay_down_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1636,22 +1624,22 @@ static void lay_down_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1660,10 +1648,10 @@ static void lay_down_rc_track_flat_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1673,7 +1661,7 @@ static void lay_down_rc_track_flat_to_right_bank( /** rct2: 0x00824A2C */ static void lay_down_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1682,29 +1670,29 @@ static void lay_down_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16244, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16245, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16249, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16242, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16243, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1717,22 +1705,22 @@ static void lay_down_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26663, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26664, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26661, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26662, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1741,10 +1729,10 @@ static void lay_down_rc_track_left_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1754,7 +1742,7 @@ static void lay_down_rc_track_left_bank_to_flat( /** rct2: 0x00824A3C */ static void lay_down_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1763,29 +1751,29 @@ static void lay_down_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16240, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16241, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16238, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16246, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16239, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16247, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1798,22 +1786,22 @@ static void lay_down_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26659, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26660, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26657, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26658, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1822,10 +1810,10 @@ static void lay_down_rc_track_right_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1835,7 +1823,7 @@ static void lay_down_rc_track_right_bank_to_flat( /** rct2: 0x00824A4C */ static void lay_down_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1847,30 +1835,30 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16363, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16363, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16374, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16374, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16368, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16368, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16373, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16373, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16358, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16358, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1888,22 +1876,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16362, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16362, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16367, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16367, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16372, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16372, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16357, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16357, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1919,22 +1907,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16361, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16361, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16366, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16366, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16371, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16371, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16356, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16356, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1951,22 +1939,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16360, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16360, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16365, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16365, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16370, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16370, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16355, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16355, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1982,30 +1970,30 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16359, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16359, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16364, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16364, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16369, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16369, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16375, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16375, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16354, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16354, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2031,22 +2019,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26738, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26738, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26743, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26743, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26748, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26748, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26733, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26733, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -2056,7 +2044,7 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2072,21 +2060,21 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26737, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26737, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26742, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26742, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26747, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26747, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26732, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26732, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; } paint_util_set_segment_support_height( @@ -2101,22 +2089,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26736, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26736, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26741, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26741, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26746, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26746, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26731, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26731, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -2132,21 +2120,21 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26735, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26735, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26740, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26740, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26745, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26745, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26730, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26730, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; } paint_util_set_segment_support_height( @@ -2161,22 +2149,22 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26734, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26734, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26739, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26739, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26744, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26744, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26729, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26729, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; } @@ -2186,7 +2174,7 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2205,7 +2193,7 @@ static void lay_down_rc_track_banked_left_quarter_turn_5( /** rct2: 0x00824A5C */ static void lay_down_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -2214,7 +2202,7 @@ static void lay_down_rc_track_banked_right_quarter_turn_5( /** rct2: 0x00824A6C */ static void lay_down_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2223,29 +2211,29 @@ static void lay_down_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16250, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16250, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16254, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16254, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16251, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16251, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16255, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16255, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16252, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16252, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16253, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16253, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2265,22 +2253,22 @@ static void lay_down_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26665, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26665, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26666, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26666, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26667, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26667, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26668, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26668, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2289,25 +2277,25 @@ static void lay_down_rc_track_left_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2326,7 +2314,7 @@ static void lay_down_rc_track_left_bank_to_25_deg_up( /** rct2: 0x00824A7C */ static void lay_down_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2335,29 +2323,29 @@ static void lay_down_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16256, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16256, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16257, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16257, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16258, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16258, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16260, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16260, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16259, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16259, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16261, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16261, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2377,22 +2365,22 @@ static void lay_down_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26669, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26669, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26670, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26670, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26671, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26671, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26672, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26672, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2401,25 +2389,25 @@ static void lay_down_rc_track_right_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2438,7 +2426,7 @@ static void lay_down_rc_track_right_bank_to_25_deg_up( /** rct2: 0x00824A8C */ static void lay_down_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2447,29 +2435,29 @@ static void lay_down_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16262, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16262, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16266, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16266, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16263, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16263, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16267, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16267, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16265, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16265, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2489,22 +2477,22 @@ static void lay_down_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26673, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26673, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26674, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26674, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26675, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26675, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26676, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26676, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2513,25 +2501,25 @@ static void lay_down_rc_track_25_deg_up_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2550,7 +2538,7 @@ static void lay_down_rc_track_25_deg_up_to_left_bank( /** rct2: 0x00824A9C */ static void lay_down_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2559,29 +2547,29 @@ static void lay_down_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16268, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16268, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16269, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16269, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16270, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16270, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16272, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16272, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16271, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16271, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16273, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16273, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2601,22 +2589,22 @@ static void lay_down_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26677, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26677, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26678, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26678, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26679, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26679, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26680, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26680, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2625,25 +2613,25 @@ static void lay_down_rc_track_25_deg_up_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2662,7 +2650,7 @@ static void lay_down_rc_track_25_deg_up_to_right_bank( /** rct2: 0x00824AAC */ static void lay_down_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2670,7 +2658,7 @@ static void lay_down_rc_track_left_bank_to_25_deg_down( /** rct2: 0x00824ABC */ static void lay_down_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2678,7 +2666,7 @@ static void lay_down_rc_track_right_bank_to_25_deg_down( /** rct2: 0x00824ACC */ static void lay_down_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2686,7 +2674,7 @@ static void lay_down_rc_track_25_deg_down_to_left_bank( /** rct2: 0x00824ADC */ static void lay_down_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2694,7 +2682,7 @@ static void lay_down_rc_track_25_deg_down_to_right_bank( /** rct2: 0x00824AEC */ static void lay_down_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2703,25 +2691,25 @@ static void lay_down_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16274, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16274, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16275, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16275, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16276, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16276, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16277, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16277, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -2734,22 +2722,22 @@ static void lay_down_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26681, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26681, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26682, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26682, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26683, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26683, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26684, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26684, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -2758,10 +2746,10 @@ static void lay_down_rc_track_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2771,7 +2759,7 @@ static void lay_down_rc_track_left_bank( /** rct2: 0x00824AFC */ static void lay_down_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2779,7 +2767,7 @@ static void lay_down_rc_track_right_bank( /** rct2: 0x00824B0C */ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2791,27 +2779,27 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16510, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16510, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16515, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16515, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16520, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16520, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16525, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16525, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2829,20 +2817,20 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16511, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16511, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16516, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16516, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16521, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16521, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16526, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16526, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -2858,22 +2846,22 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16512, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16512, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16517, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16517, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16522, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16522, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16527, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16527, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -2889,20 +2877,20 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16513, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16513, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16518, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16518, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16523, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16523, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16528, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16528, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -2918,27 +2906,27 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16514, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16514, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16519, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16519, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16524, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16524, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16529, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16529, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2964,19 +2952,19 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26949, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26949, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26954, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26954, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26959, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26959, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26964, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26964, 0, 6, 32, 20, 3, height + 24); break; } @@ -2985,7 +2973,7 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3001,19 +2989,19 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26950, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26950, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26955, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26955, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26960, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26960, 0, 16, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26965, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26965, 0, 16, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3028,19 +3016,19 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26951, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26951, 0, 16, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26956, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26956, 16, 16, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26961, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26961, 16, 0, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26966, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26966, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3056,19 +3044,19 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26952, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26952, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26957, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26957, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26962, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26962, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26967, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26967, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3083,19 +3071,19 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26953, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26953, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26958, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26958, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26963, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26963, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26968, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26968, 6, 0, 20, 32, 3, height + 24); break; } @@ -3104,7 +3092,7 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3123,7 +3111,7 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x00824B1C */ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3135,27 +3123,27 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16490, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16490, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16495, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16495, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16500, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16500, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16505, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16505, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -3173,21 +3161,21 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16491, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16491, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16496, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16496, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16501, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16501, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16506, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16506, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -3202,21 +3190,21 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16492, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16492, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16497, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16497, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16502, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16502, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16507, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16507, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -3233,20 +3221,20 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16493, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16493, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16498, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16498, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16503, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16503, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16508, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16508, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -3262,27 +3250,27 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16494, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16494, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16499, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16499, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16504, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16504, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16509, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16509, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3308,19 +3296,19 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26929, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26929, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26934, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26934, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26939, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26939, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26944, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26944, 0, 6, 32, 20, 3, height + 24); break; } @@ -3329,7 +3317,7 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3345,19 +3333,19 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26930, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26930, 0, 16, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26935, 0, 16, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26935, 0, 16, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26940, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26940, 0, 0, 32, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26945, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26945, 0, 0, 32, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3372,19 +3360,19 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26931, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26931, 0, 0, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26936, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26936, 16, 0, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26941, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26941, 16, 16, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26946, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26946, 0, 16, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3400,19 +3388,19 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26932, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26932, 16, 0, 16, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26937, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26937, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26942, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26942, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26947, 16, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26947, 16, 0, 16, 32, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -3427,19 +3415,19 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26933, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26933, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26938, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26938, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26943, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26943, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26948, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26948, 6, 0, 20, 32, 3, height + 24); break; } @@ -3448,7 +3436,7 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 43, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3467,7 +3455,7 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x00824B2C */ static void lay_down_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -3476,7 +3464,7 @@ static void lay_down_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x00824B3C */ static void lay_down_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -3485,7 +3473,7 @@ static void lay_down_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x00824B4C */ static void lay_down_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3497,27 +3485,27 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3532,24 +3520,24 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); break; } @@ -3565,25 +3553,25 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16404, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16408, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16403, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16407, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3598,27 +3586,27 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16405, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16409, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16402, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16406, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3644,22 +3632,22 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3668,7 +3656,7 @@ static void lay_down_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3681,22 +3669,22 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -3710,11 +3698,11 @@ static void lay_down_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3725,22 +3713,22 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26643, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26647, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26642, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26646, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -3754,11 +3742,11 @@ static void lay_down_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3769,22 +3757,22 @@ static void lay_down_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26644, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26648, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26641, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26645, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3793,7 +3781,7 @@ static void lay_down_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3812,7 +3800,7 @@ static void lay_down_rc_track_s_bend_left( /** rct2: 0x00824B5C */ static void lay_down_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3824,27 +3812,27 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3859,25 +3847,25 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -3892,25 +3880,25 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16412, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16416, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16411, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16415, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3925,27 +3913,27 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16413, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16417, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16410, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16414, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3971,22 +3959,22 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3995,7 +3983,7 @@ static void lay_down_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4008,22 +3996,22 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -4037,11 +4025,11 @@ static void lay_down_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4052,22 +4040,22 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26651, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26655, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26650, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26654, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -4081,11 +4069,11 @@ static void lay_down_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4096,22 +4084,22 @@ static void lay_down_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26652, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26656, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26649, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26653, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -4120,7 +4108,7 @@ static void lay_down_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4139,7 +4127,7 @@ static void lay_down_rc_track_s_bend_right( /** rct2: 0x00824B6C */ static void lay_down_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4149,27 +4137,27 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4188,27 +4176,27 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4223,22 +4211,22 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, height); break; } @@ -4251,19 +4239,19 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -4284,19 +4272,19 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16566, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16574, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16565, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16573, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -4311,22 +4299,22 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16567, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16575, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16564, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16572, 12, 0, 3, 16, 119, height, 12, 0, height); break; } @@ -4339,27 +4327,27 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16568, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16576, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16563, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16571, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4374,27 +4362,27 @@ static void lay_down_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16569, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16577, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16562, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16570, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4418,7 +4406,7 @@ static void lay_down_rc_track_left_vertical_loop( /** rct2: 0x00824B7C */ static void lay_down_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4428,23 +4416,23 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -4456,27 +4444,27 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -4486,22 +4474,22 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, height); break; } @@ -4512,19 +4500,19 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -4540,19 +4528,19 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16589, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16581, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16590, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16582, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -4562,22 +4550,22 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16588, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16580, 16, 0, 2, 16, 119, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16591, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16583, 10, 16, 4, 16, 119, height, 10, 16, height); break; } @@ -4588,27 +4576,27 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16587, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16579, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16592, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16584, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -4618,23 +4606,23 @@ static void lay_down_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16586, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16578, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16593, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16585, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -4653,7 +4641,7 @@ static void lay_down_rc_track_right_vertical_loop( /** rct2: 0x00824BBC */ static void lay_down_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4665,27 +4653,27 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16381, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16381, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16384, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16384, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16387, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16387, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16378, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16378, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4703,22 +4691,22 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16380, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16380, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16383, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16383, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16386, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16386, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16377, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16377, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4732,27 +4720,27 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16379, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16379, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16382, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16382, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16385, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16385, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16376, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16376, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4778,22 +4766,22 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26710, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26710, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26713, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26713, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26716, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26716, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26707, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26707, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -4803,7 +4791,7 @@ static void lay_down_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -4819,22 +4807,22 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26709, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26709, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26712, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26712, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26715, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26715, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26706, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26706, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -4848,22 +4836,22 @@ static void lay_down_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26708, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26708, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26711, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26711, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26714, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26714, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26705, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26705, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -4873,7 +4861,7 @@ static void lay_down_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -4892,7 +4880,7 @@ static void lay_down_rc_track_left_quarter_turn_3( /** rct2: 0x00824BCC */ static void lay_down_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4901,7 +4889,7 @@ static void lay_down_rc_track_right_quarter_turn_3( /** rct2: 0x00824BDC */ static void lay_down_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4913,30 +4901,30 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16393, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16393, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16400, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16400, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16396, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16396, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16399, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16399, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16390, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16390, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4954,22 +4942,22 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16392, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16392, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16395, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16395, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16398, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16398, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16389, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16389, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4983,30 +4971,30 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16391, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16391, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16394, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16394, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16397, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16397, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16401, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16401, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16388, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16388, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5032,22 +5020,22 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26722, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26722, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26725, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26725, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26728, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26728, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26719, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26719, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -5057,7 +5045,7 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5073,22 +5061,22 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26721, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26721, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26724, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26724, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26727, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26727, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26718, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26718, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -5102,22 +5090,22 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26720, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26720, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26723, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26723, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26726, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26726, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26717, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26717, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -5127,7 +5115,7 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -5146,7 +5134,7 @@ static void lay_down_rc_track_left_quarter_turn_3_bank( /** rct2: 0x00824BEC */ static void lay_down_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5155,7 +5143,7 @@ static void lay_down_rc_track_right_quarter_turn_3_bank( /** rct2: 0x00824BFC */ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5167,23 +5155,23 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16541, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16541, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16543, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16543, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16545, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16545, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16539, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16539, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -5204,23 +5192,23 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16540, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16540, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16542, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16542, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16544, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16544, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16538, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16538, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5246,19 +5234,19 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26924, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26924, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26926, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26926, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26928, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26928, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26922, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26922, 0, 6, 32, 20, 3, height + 24); break; } @@ -5267,7 +5255,7 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5286,19 +5274,19 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26923, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26923, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26925, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26925, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26927, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26927, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26921, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26921, 6, 0, 20, 32, 3, height + 24); break; } @@ -5307,7 +5295,7 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -5326,7 +5314,7 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x00824C0C */ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5338,23 +5326,23 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16530, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16530, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16532, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16532, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16534, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16534, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16536, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16536, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -5375,27 +5363,27 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16531, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16531, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16533, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16533, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16535, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16535, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16537, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16537, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5423,19 +5411,19 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26913, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26913, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26915, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26915, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26917, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26917, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26919, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26919, 0, 6, 32, 20, 3, height + 24); break; } @@ -5444,7 +5432,7 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5463,19 +5451,19 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26914, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26914, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26916, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26916, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26918, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26918, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26920, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26920, 6, 0, 20, 32, 3, height + 24); break; } @@ -5484,7 +5472,7 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 41, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -5503,7 +5491,7 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x00824C1C */ static void lay_down_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5512,7 +5500,7 @@ static void lay_down_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x00824C2C */ static void lay_down_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5521,7 +5509,7 @@ static void lay_down_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x00824C9C */ static void lay_down_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5531,27 +5519,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16481, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16481, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16488, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16488, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16484, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16484, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16487, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16487, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16478, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16478, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5569,22 +5555,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -5597,27 +5581,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16479, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16479, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16482, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16482, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16485, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16485, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16489, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16489, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16476, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16476, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5637,27 +5619,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16478, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16478, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16481, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16481, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16488, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16488, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16484, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16484, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16487, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16487, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5680,23 +5660,21 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16477, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16480, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16486, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5708,27 +5686,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16476, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16476, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16479, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16479, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16482, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16482, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16485, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16485, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16489, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16489, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -5743,7 +5719,7 @@ static void lay_down_rc_track_left_half_banked_helix_up_small( /** rct2: 0x00824CAC */ static void lay_down_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5753,27 +5729,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16462, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16462, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16465, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16465, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16468, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16468, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16471, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16471, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16475, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16475, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5791,23 +5765,21 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -5819,27 +5791,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16464, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16464, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16467, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16467, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16474, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16474, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16470, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16470, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16473, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16473, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -5859,27 +5829,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16465, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16465, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16468, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16468, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16471, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16471, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16475, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16475, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16462, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16462, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5902,22 +5870,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16466, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16469, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16472, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16463, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -5930,27 +5896,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16467, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16467, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16474, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16474, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16470, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16470, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16473, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16473, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16464, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16464, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -5965,7 +5929,7 @@ static void lay_down_rc_track_right_half_banked_helix_up_small( /** rct2: 0x00824CBC */ static void lay_down_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5979,7 +5943,7 @@ static void lay_down_rc_track_left_half_banked_helix_down_small( /** rct2: 0x00824CCC */ static void lay_down_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5993,7 +5957,7 @@ static void lay_down_rc_track_right_half_banked_helix_down_small( /** rct2: 0x00824CDC */ static void lay_down_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6003,27 +5967,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16449, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16449, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16460, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16460, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16454, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16454, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16459, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16459, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16444, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16444, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -6041,22 +6003,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16448, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16448, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16453, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16453, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16458, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16458, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16443, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16443, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -6071,22 +6031,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -6101,22 +6059,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16446, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16446, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16451, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16451, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16456, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16456, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16441, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16441, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -6131,27 +6087,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16445, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16445, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16450, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16450, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16455, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16455, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16461, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16461, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16440, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16440, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -6171,27 +6125,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16444, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16444, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16449, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16449, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16460, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16460, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16454, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16454, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16459, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16459, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -6214,22 +6166,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16443, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16443, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16448, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16448, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16453, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16453, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16458, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16458, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -6244,22 +6194,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16442, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16447, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16452, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16457, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -6274,22 +6222,20 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16441, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16441, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16446, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16446, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16451, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16451, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16456, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16456, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -6304,27 +6250,25 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16440, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16440, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16445, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16445, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16450, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16450, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16455, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16455, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16461, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16461, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -6339,7 +6283,7 @@ static void lay_down_rc_track_left_half_banked_helix_up_large( /** rct2: 0x00824CEC */ static void lay_down_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6349,27 +6293,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16418, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16418, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16423, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16423, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16428, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16428, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16433, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16433, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16439, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16439, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -6387,22 +6329,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16419, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16419, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16424, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16424, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16429, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16429, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16434, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16434, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -6417,22 +6357,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -6447,22 +6385,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16421, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16421, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16426, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16426, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16431, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16431, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16436, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16436, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -6477,27 +6413,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16422, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16422, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16427, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16427, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16438, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16438, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16432, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16432, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16437, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16437, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -6517,27 +6451,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16423, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16423, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16428, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16428, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16433, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16433, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16439, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16439, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16418, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16418, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -6560,22 +6492,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16424, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16424, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16429, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16429, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16434, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16434, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16419, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16419, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -6590,22 +6520,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16425, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16430, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16435, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16420, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -6620,22 +6548,20 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16426, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16426, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16431, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16431, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16436, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16436, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16421, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16421, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -6650,27 +6576,25 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16427, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16427, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16438, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16438, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16432, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16432, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16437, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16437, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16422, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16422, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -6685,7 +6609,7 @@ static void lay_down_rc_track_right_half_banked_helix_up_large( /** rct2: 0x00824CFC */ static void lay_down_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6699,7 +6623,7 @@ static void lay_down_rc_track_left_half_banked_helix_down_large( /** rct2: 0x00824D0C */ static void lay_down_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6713,7 +6637,7 @@ static void lay_down_rc_track_right_half_banked_helix_down_large( /** rct2: 0x00824D3C */ static void lay_down_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6722,31 +6646,27 @@ static void lay_down_rc_track_left_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16555, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16555, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16559, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16559, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16556, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16556, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16560, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16560, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16557, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16557, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16561, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16561, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16554, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16554, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16558, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16558, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6756,31 +6676,27 @@ static void lay_down_rc_track_left_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26910, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26910, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26906, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26906, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26911, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26911, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26907, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26907, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26912, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26912, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26908, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26908, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26909, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26909, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26905, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26905, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6791,7 +6707,7 @@ static void lay_down_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x00824D1C */ static void lay_down_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6800,31 +6716,27 @@ static void lay_down_rc_track_right_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16546, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16546, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16550, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16550, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16547, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16547, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16551, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16551, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16548, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16548, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16552, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16552, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16549, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16549, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16553, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 16553, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6834,31 +6746,27 @@ static void lay_down_rc_track_right_quarter_turn_1_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26901, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26901, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26897, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26897, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26902, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26902, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26898, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26898, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26903, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26903, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26899, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26899, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26904, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26904, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26900, 0, 0, 28, 28, 1, height, 2, 2, - height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 26900, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } } @@ -6870,7 +6778,7 @@ static void lay_down_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x00824D2C */ static void lay_down_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -6878,7 +6786,7 @@ static void lay_down_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x00824D4C */ static void lay_down_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -6886,7 +6794,7 @@ static void lay_down_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x00824D5C */ static void lay_down_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6896,18 +6804,18 @@ static void lay_down_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16230, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16230, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16231, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16231, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -6921,23 +6829,23 @@ static void lay_down_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -6947,7 +6855,7 @@ static void lay_down_rc_track_brakes( /** rct2: 0x00824D6C */ static void lay_down_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6958,41 +6866,41 @@ static void lay_down_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16224, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 16225, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -7008,44 +6916,44 @@ static void lay_down_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26555, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26556, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -7058,7 +6966,7 @@ static void lay_down_rc_track_on_ride_photo( /** rct2: 0x00824D8C */ static void lay_down_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7070,27 +6978,27 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16740, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16740, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16744, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16744, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16748, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16748, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16752, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16752, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -7104,22 +7012,22 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16741, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16741, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16745, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16745, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16749, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16749, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16753, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16753, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -7135,22 +7043,22 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16742, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16742, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16746, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16746, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16750, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16750, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16754, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16754, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -7171,31 +7079,31 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16743, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16743, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16747, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16747, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16751, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16751, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16755, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16755, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7216,22 +7124,22 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26765, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26765, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26769, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26769, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26773, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26773, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26777, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26777, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -7239,7 +7147,7 @@ static void lay_down_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -7252,23 +7160,23 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26766, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26766, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26770, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26770, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26774, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26774, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26778, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26778, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -7283,22 +7191,22 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26767, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26767, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26771, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26771, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26775, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26775, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26779, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26779, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -7319,23 +7227,23 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26768, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26768, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26772, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26772, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26776, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26776, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26780, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26780, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -7348,19 +7256,19 @@ static void lay_down_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7372,7 +7280,7 @@ static void lay_down_rc_track_left_eighth_to_diag( /** rct2: 0x00824D9C */ static void lay_down_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7384,27 +7292,27 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16724, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16724, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16728, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16728, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16732, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16732, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16736, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16736, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -7418,22 +7326,22 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16725, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16725, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16729, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16729, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16733, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16733, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16737, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16737, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -7449,22 +7357,22 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16726, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16726, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16730, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16730, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16734, 0, 0, 28, 28, 3, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 16734, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16738, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16738, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -7485,31 +7393,31 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16727, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16727, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16731, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16731, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16735, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16735, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16739, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16739, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7530,22 +7438,22 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26749, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26749, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26753, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26753, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26757, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26757, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26761, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26761, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -7553,7 +7461,7 @@ static void lay_down_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -7566,22 +7474,22 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26750, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26750, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26754, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26754, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26758, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26758, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26762, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26762, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -7597,23 +7505,23 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26751, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26751, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26755, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26755, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26759, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26759, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26763, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26763, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -7633,22 +7541,22 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26752, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26752, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26756, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26756, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26760, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26760, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26764, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26764, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -7662,19 +7570,19 @@ static void lay_down_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7686,7 +7594,7 @@ static void lay_down_rc_track_right_eighth_to_diag( /** rct2: 0x00824DAC */ static void lay_down_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7695,7 +7603,7 @@ static void lay_down_rc_track_left_eighth_to_orthogonal( /** rct2: 0x00824DBC */ static void lay_down_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7704,7 +7612,7 @@ static void lay_down_rc_track_right_eighth_to_orthogonal( /** rct2: 0x00824DCC */ static void lay_down_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7716,27 +7624,27 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16772, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16772, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16776, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16776, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16780, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16780, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16784, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16784, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -7750,22 +7658,22 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16773, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16773, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16777, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16777, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16781, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16781, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16785, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16785, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -7781,22 +7689,22 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16774, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16774, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16778, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16778, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16782, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16782, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16786, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16786, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -7817,31 +7725,31 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16775, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16775, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16779, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16779, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16783, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16783, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16787, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16787, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7862,22 +7770,22 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26853, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26853, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26857, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26857, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26861, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26861, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26865, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26865, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -7886,7 +7794,7 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -7899,23 +7807,23 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26854, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26854, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26858, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26858, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26862, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26862, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26866, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26866, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -7930,22 +7838,22 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26855, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26855, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26859, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26859, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26863, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26863, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26867, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26867, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -7966,23 +7874,23 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26856, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26856, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26860, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26860, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26864, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26864, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26868, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26868, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -7995,19 +7903,19 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8019,7 +7927,7 @@ static void lay_down_rc_track_left_eighth_bank_to_diag( /** rct2: 0x00824DDC */ static void lay_down_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8031,27 +7939,27 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16756, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16756, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16760, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16760, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16764, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16764, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16768, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16768, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -8065,22 +7973,22 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16757, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16757, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16761, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16761, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16765, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16765, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16769, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16769, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -8096,22 +8004,22 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16758, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16758, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16762, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16762, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16766, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 16766, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16770, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16770, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -8132,31 +8040,31 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16759, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16759, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16763, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16763, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16767, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16767, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16771, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16771, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8177,22 +8085,22 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26837, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26837, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26841, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26841, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26845, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26845, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26849, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26849, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -8201,7 +8109,7 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -8214,22 +8122,22 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26838, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26838, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26842, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26842, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26846, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26846, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26850, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26850, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -8245,23 +8153,23 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26839, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26839, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26843, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26843, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26847, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26847, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26851, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26851, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -8281,22 +8189,22 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26840, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26840, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26844, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26844, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26848, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26848, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26852, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26852, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -8310,19 +8218,19 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8334,7 +8242,7 @@ static void lay_down_rc_track_right_eighth_bank_to_diag( /** rct2: 0x00824DEC */ static void lay_down_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8343,7 +8251,7 @@ static void lay_down_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x00824DFC */ static void lay_down_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -8352,7 +8260,7 @@ static void lay_down_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x00824D7C */ static void lay_down_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8366,7 +8274,7 @@ static void lay_down_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16699, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16699, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8377,7 +8285,7 @@ static void lay_down_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16637, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16637, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8394,7 +8302,7 @@ static void lay_down_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16696, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16696, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8405,7 +8313,7 @@ static void lay_down_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16634, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16634, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8422,7 +8330,7 @@ static void lay_down_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16698, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16698, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8433,7 +8341,7 @@ static void lay_down_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16636, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16636, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8450,22 +8358,22 @@ static void lay_down_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16697, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16697, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8475,22 +8383,22 @@ static void lay_down_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16635, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16635, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8512,7 +8420,7 @@ static void lay_down_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26812, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26812, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8523,7 +8431,7 @@ static void lay_down_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26784, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26784, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8540,7 +8448,7 @@ static void lay_down_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26809, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26809, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8551,7 +8459,7 @@ static void lay_down_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26781, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26781, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8568,7 +8476,7 @@ static void lay_down_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26811, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26811, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8579,7 +8487,7 @@ static void lay_down_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26783, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26783, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8596,7 +8504,7 @@ static void lay_down_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26810, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26810, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8607,7 +8515,7 @@ static void lay_down_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26782, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26782, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -8620,19 +8528,19 @@ static void lay_down_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8644,7 +8552,7 @@ static void lay_down_rc_track_diag_flat( /** rct2: 0x00824E2C */ static void lay_down_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8658,7 +8566,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8669,7 +8577,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8686,7 +8594,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8697,7 +8605,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8714,7 +8622,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8725,7 +8633,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8742,22 +8650,22 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8767,22 +8675,22 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8804,7 +8712,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26824, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8815,7 +8723,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8832,7 +8740,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26821, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8843,7 +8751,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8860,7 +8768,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26823, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8871,7 +8779,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8888,7 +8796,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26822, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8899,7 +8807,7 @@ static void lay_down_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8912,19 +8820,19 @@ static void lay_down_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8936,7 +8844,7 @@ static void lay_down_rc_track_diag_25_deg_up( /** rct2: 0x00824E8C */ static void lay_down_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8950,7 +8858,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8961,7 +8869,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8978,7 +8886,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8989,7 +8897,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9006,7 +8914,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9017,7 +8925,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9034,22 +8942,22 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9059,22 +8967,22 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9094,7 +9002,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9108,7 +9016,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9122,7 +9030,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -9136,7 +9044,7 @@ static void lay_down_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -9148,19 +9056,19 @@ static void lay_down_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9172,7 +9080,7 @@ static void lay_down_rc_track_diag_60_deg_up( /** rct2: 0x00824E0C */ static void lay_down_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9186,7 +9094,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9197,7 +9105,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9214,7 +9122,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9225,7 +9133,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9242,7 +9150,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9253,7 +9161,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9270,22 +9178,22 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9295,22 +9203,22 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9332,7 +9240,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26816, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9343,7 +9251,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9360,7 +9268,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26813, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9371,7 +9279,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9388,7 +9296,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26815, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9399,7 +9307,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9416,7 +9324,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26814, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9427,7 +9335,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9440,19 +9348,19 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9464,7 +9372,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x00824E6C */ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9478,7 +9386,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9489,7 +9397,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9506,7 +9414,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9517,7 +9425,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9534,7 +9442,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9545,7 +9453,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9562,22 +9470,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9587,22 +9495,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9622,7 +9530,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9636,7 +9544,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9650,7 +9558,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9664,7 +9572,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9676,19 +9584,19 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9700,7 +9608,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x00824E7C */ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9714,7 +9622,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9725,7 +9633,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9742,7 +9650,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9753,7 +9661,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9770,7 +9678,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9781,7 +9689,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9798,22 +9706,22 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9823,22 +9731,22 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9858,7 +9766,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9872,7 +9780,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9886,7 +9794,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9900,8 +9808,8 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } @@ -9912,19 +9820,19 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9936,7 +9844,7 @@ static void lay_down_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x00824E1C */ static void lay_down_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9950,7 +9858,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9961,7 +9869,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9978,7 +9886,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9989,7 +9897,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10006,7 +9914,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10017,7 +9925,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10034,22 +9942,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10059,22 +9967,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10096,7 +10004,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26820, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10107,7 +10015,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10124,7 +10032,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26817, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10135,7 +10043,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10152,7 +10060,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26819, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10163,7 +10071,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10180,7 +10088,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26818, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10191,7 +10099,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10204,19 +10112,19 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10228,7 +10136,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x00824E5C */ static void lay_down_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10242,7 +10150,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16709, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10253,7 +10161,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16647, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10270,7 +10178,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16710, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10281,7 +10189,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16648, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10298,7 +10206,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16708, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10309,7 +10217,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16646, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10326,22 +10234,22 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16711, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10351,22 +10259,22 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16649, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10386,7 +10294,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26794, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10400,7 +10308,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26795, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10414,7 +10322,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26793, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10428,7 +10336,7 @@ static void lay_down_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26796, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -10440,19 +10348,19 @@ static void lay_down_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 45, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10464,7 +10372,7 @@ static void lay_down_rc_track_diag_25_deg_down( /** rct2: 0x00824EBC */ static void lay_down_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10478,7 +10386,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16721, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10489,7 +10397,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16659, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10506,7 +10414,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16722, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10517,7 +10425,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16660, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10534,7 +10442,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16720, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10545,7 +10453,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16658, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10562,22 +10470,22 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16723, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10587,22 +10495,22 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16661, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10622,7 +10530,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26806, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -10636,7 +10544,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26807, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -10650,7 +10558,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26805, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -10664,7 +10572,7 @@ static void lay_down_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26808, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -10676,19 +10584,19 @@ static void lay_down_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10700,7 +10608,7 @@ static void lay_down_rc_track_diag_60_deg_down( /** rct2: 0x00824E3C */ static void lay_down_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10714,7 +10622,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16705, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10725,7 +10633,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16643, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10741,7 +10649,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16706, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10752,7 +10660,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10768,7 +10676,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16704, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10779,7 +10687,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16642, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10795,22 +10703,22 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16707, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10820,22 +10728,22 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16645, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -10854,7 +10762,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26790, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10867,7 +10775,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26791, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10880,7 +10788,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26789, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10893,7 +10801,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26792, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10905,19 +10813,19 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -10929,7 +10837,7 @@ static void lay_down_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x00824E9C */ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10943,7 +10851,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16717, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -10954,7 +10862,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16655, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -10971,7 +10879,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16718, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10982,7 +10890,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16656, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10999,7 +10907,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16716, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11010,7 +10918,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11027,22 +10935,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16719, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11052,22 +10960,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16657, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11087,8 +10995,8 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 26802, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } paint_util_set_segment_support_height( @@ -11101,7 +11009,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26803, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11115,7 +11023,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26801, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11129,7 +11037,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26804, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11141,19 +11049,19 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11165,7 +11073,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x00824EAC */ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11179,7 +11087,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16713, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11190,7 +11098,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16651, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11207,7 +11115,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16714, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11218,7 +11126,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16652, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11235,7 +11143,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16712, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11246,7 +11154,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16650, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11263,22 +11171,22 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16715, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11288,22 +11196,22 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16653, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11323,7 +11231,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26798, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11337,7 +11245,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26799, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11351,7 +11259,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26797, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11365,7 +11273,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26800, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -11377,19 +11285,19 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11401,7 +11309,7 @@ static void lay_down_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x00824E4C */ static void lay_down_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11415,7 +11323,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16701, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11426,7 +11334,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16639, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11443,7 +11351,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16702, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11454,7 +11362,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16640, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11471,7 +11379,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16700, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11482,7 +11390,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16638, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11499,22 +11407,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16703, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11524,22 +11432,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16641, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -11559,7 +11467,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26786, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11573,7 +11481,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26787, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11587,7 +11495,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26785, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11601,7 +11509,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26788, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11613,19 +11521,19 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11637,7 +11545,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x00824EEC */ static void lay_down_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11649,7 +11557,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11663,10 +11571,10 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -11680,7 +11588,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11694,22 +11602,22 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11728,7 +11636,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11742,7 +11650,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11756,7 +11664,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11770,7 +11678,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11783,19 +11691,19 @@ static void lay_down_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11807,7 +11715,7 @@ static void lay_down_rc_track_diag_flat_to_left_bank( /** rct2: 0x00824EFC */ static void lay_down_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11819,7 +11727,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11833,7 +11741,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11847,10 +11755,10 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -11864,22 +11772,22 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11898,7 +11806,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11912,7 +11820,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11926,7 +11834,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11940,7 +11848,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11953,19 +11861,19 @@ static void lay_down_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11977,7 +11885,7 @@ static void lay_down_rc_track_diag_flat_to_right_bank( /** rct2: 0x00824F0C */ static void lay_down_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11989,7 +11897,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16672, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12003,10 +11911,10 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16673, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16675, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12020,7 +11928,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16671, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12034,22 +11942,22 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16674, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12068,7 +11976,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26878, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12082,7 +11990,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26879, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12096,7 +12004,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26877, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12110,7 +12018,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26880, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12123,19 +12031,19 @@ static void lay_down_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12147,7 +12055,7 @@ static void lay_down_rc_track_diag_left_bank_to_flat( /** rct2: 0x00824F1C */ static void lay_down_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12159,7 +12067,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16667, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12173,7 +12081,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16668, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12187,10 +12095,10 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16666, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16670, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -12204,22 +12112,22 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16669, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12238,7 +12146,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26874, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12252,7 +12160,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26875, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12266,7 +12174,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26873, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12280,7 +12188,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26876, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -12293,19 +12201,19 @@ static void lay_down_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12317,7 +12225,7 @@ static void lay_down_rc_track_diag_right_bank_to_flat( /** rct2: 0x00824F4C */ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12329,7 +12237,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12343,10 +12251,10 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12360,7 +12268,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12374,22 +12282,22 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12408,7 +12316,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12422,7 +12330,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12436,7 +12344,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12450,7 +12358,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12462,19 +12370,19 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12486,7 +12394,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x00824F5C */ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12498,7 +12406,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12512,7 +12420,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12526,10 +12434,10 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12543,22 +12451,22 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12577,7 +12485,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12591,7 +12499,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12605,7 +12513,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12619,7 +12527,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12631,19 +12539,19 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12655,7 +12563,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x00824F2C */ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12667,7 +12575,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12681,10 +12589,10 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12698,7 +12606,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12712,22 +12620,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12746,7 +12654,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12760,7 +12668,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12774,7 +12682,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12788,7 +12696,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12800,19 +12708,19 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12824,7 +12732,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x00824F3C */ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12836,7 +12744,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12850,7 +12758,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -12864,10 +12772,10 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -12881,22 +12789,22 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12915,7 +12823,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12929,7 +12837,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12943,7 +12851,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12957,7 +12865,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -12969,19 +12877,19 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -12993,7 +12901,7 @@ static void lay_down_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x00824F6C */ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13005,7 +12913,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16682, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13018,10 +12926,10 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16683, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16685, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13034,7 +12942,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16681, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13047,22 +12955,22 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16684, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13080,7 +12988,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26886, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13093,7 +13001,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26887, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13106,7 +13014,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26885, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13119,7 +13027,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26888, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13131,19 +13039,19 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -13155,7 +13063,7 @@ static void lay_down_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x00824F7C */ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13167,7 +13075,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16677, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13180,7 +13088,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16678, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13193,10 +13101,10 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13209,22 +13117,22 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16679, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13242,7 +13150,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26882, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13255,7 +13163,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26883, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13268,7 +13176,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26881, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13281,7 +13189,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26884, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13293,19 +13201,19 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -13317,7 +13225,7 @@ static void lay_down_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x00824F8C */ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13329,7 +13237,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16692, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13343,10 +13251,10 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16693, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16695, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13360,7 +13268,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16691, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13374,22 +13282,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16694, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13408,7 +13316,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26894, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13422,7 +13330,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26895, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13436,7 +13344,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26893, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13450,7 +13358,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26896, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13462,19 +13370,19 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13486,7 +13394,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x00824F9C */ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13498,7 +13406,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16687, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13512,7 +13420,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16688, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13526,10 +13434,10 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16686, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16690, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -13543,22 +13451,22 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16689, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13577,7 +13485,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26890, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13591,7 +13499,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26891, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13605,7 +13513,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26889, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13619,7 +13527,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26892, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -13631,19 +13539,19 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 37, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13655,7 +13563,7 @@ static void lay_down_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x00824ECC */ static void lay_down_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13667,7 +13575,7 @@ static void lay_down_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13681,7 +13589,7 @@ static void lay_down_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -13695,7 +13603,7 @@ static void lay_down_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13709,22 +13617,22 @@ static void lay_down_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13743,7 +13651,7 @@ static void lay_down_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13757,7 +13665,7 @@ static void lay_down_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13771,7 +13679,7 @@ static void lay_down_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13785,7 +13693,7 @@ static void lay_down_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13798,19 +13706,19 @@ static void lay_down_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13822,7 +13730,7 @@ static void lay_down_rc_track_diag_left_bank( /** rct2: 0x00824EDC */ static void lay_down_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -13834,7 +13742,7 @@ static void lay_down_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16663, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13848,7 +13756,7 @@ static void lay_down_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16664, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -13862,7 +13770,7 @@ static void lay_down_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16662, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -13876,22 +13784,22 @@ static void lay_down_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16665, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -13910,7 +13818,7 @@ static void lay_down_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26870, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13924,7 +13832,7 @@ static void lay_down_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26871, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13938,7 +13846,7 @@ static void lay_down_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26869, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13952,7 +13860,7 @@ static void lay_down_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26872, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -13965,19 +13873,19 @@ static void lay_down_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -13989,7 +13897,7 @@ static void lay_down_rc_track_diag_right_bank( /** rct2: 0x00824FAC */ static void lay_down_rc_track_left_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -13999,23 +13907,23 @@ static void lay_down_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26972, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26972, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26978, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26978, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26971, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26971, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26977, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26977, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -14032,20 +13940,20 @@ static void lay_down_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26973, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26973, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26979, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26979, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26970, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26970, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26976, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26976, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14060,20 +13968,20 @@ static void lay_down_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26974, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26974, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26980, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26980, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26969, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26969, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26975, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26975, 0, 6, 32, 20, 3, height + 24); break; } @@ -14083,7 +13991,7 @@ static void lay_down_rc_track_left_flyer_twist_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14101,7 +14009,7 @@ static void lay_down_rc_track_left_flyer_twist_up( /** rct2: 0x00824FBC */ static void lay_down_rc_track_right_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14111,23 +14019,23 @@ static void lay_down_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26984, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26984, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26990, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26990, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26983, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26983, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26989, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26989, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -14144,19 +14052,19 @@ static void lay_down_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26985, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26985, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26991, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26991, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26982, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26982, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26988, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26988, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14171,19 +14079,19 @@ static void lay_down_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26986, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26986, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26992, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26992, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26981, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26981, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26987, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26987, 0, 6, 32, 20, 3, height + 24); break; } @@ -14193,7 +14101,7 @@ static void lay_down_rc_track_right_flyer_twist_up( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14211,7 +14119,7 @@ static void lay_down_rc_track_right_flyer_twist_up( /** rct2: 0x00824FCC */ static void lay_down_rc_track_left_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14221,20 +14129,20 @@ static void lay_down_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26969, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26969, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26975, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26975, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26974, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26974, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26980, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26980, 0, 6, 32, 20, 3, height + 24); break; } @@ -14244,7 +14152,7 @@ static void lay_down_rc_track_left_flyer_twist_down( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -14257,20 +14165,20 @@ static void lay_down_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26970, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26970, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26976, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26976, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26973, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26973, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26979, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26979, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14285,23 +14193,23 @@ static void lay_down_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26971, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26971, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26977, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26977, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26972, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26972, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26978, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26978, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -14323,7 +14231,7 @@ static void lay_down_rc_track_left_flyer_twist_down( /** rct2: 0x00824FDC */ static void lay_down_rc_track_right_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14333,19 +14241,19 @@ static void lay_down_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26981, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26981, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26987, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26987, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26986, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26986, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26992, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26992, 0, 6, 32, 20, 3, height + 24); break; } @@ -14355,7 +14263,7 @@ static void lay_down_rc_track_right_flyer_twist_down( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -14368,19 +14276,19 @@ static void lay_down_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26982, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26982, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26988, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26988, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26985, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26985, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26991, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26991, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -14395,23 +14303,23 @@ static void lay_down_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26983, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26983, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26989, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26989, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26984, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26984, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26990, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26990, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -14433,7 +14341,7 @@ static void lay_down_rc_track_right_flyer_twist_down( /** rct2: 0x00824C3C */ static void lay_down_rc_track_flyer_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14443,23 +14351,23 @@ static void lay_down_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -14473,29 +14381,28 @@ static void lay_down_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -14506,20 +14413,20 @@ static void lay_down_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -14535,19 +14442,19 @@ static void lay_down_rc_track_flyer_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -14563,7 +14470,7 @@ static void lay_down_rc_track_flyer_half_loop_up( /** rct2: 0x00824C4C */ static void lay_down_rc_track_flyer_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14573,19 +14480,19 @@ static void lay_down_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16597, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16605, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16598, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 16606, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -14601,20 +14508,20 @@ static void lay_down_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16596, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16604, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16599, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16607, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -14630,29 +14537,28 @@ static void lay_down_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16595, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16603, 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16600, 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16608, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -14663,23 +14569,23 @@ static void lay_down_rc_track_flyer_half_loop_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16594, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16602, 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16601, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16609, 0, 6, 32, 20, 7, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -14693,7 +14599,7 @@ static void lay_down_rc_track_flyer_half_loop_down( /** rct2: 0x00824C5C */ static void lay_down_rc_track_left_flyer_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14703,22 +14609,22 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16610, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16610, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16613, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16613, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16616, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16616, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16619, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16619, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } @@ -14731,7 +14637,7 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( 0xFFFF, 0); } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction != 2) { paint_util_set_segment_support_height( @@ -14751,22 +14657,22 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16611, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16611, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16614, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16614, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16617, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16617, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16620, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16620, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -14778,22 +14684,22 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16612, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16612, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16615, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16615, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16618, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16618, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16621, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16621, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -14802,7 +14708,7 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14820,7 +14726,7 @@ static void lay_down_rc_track_left_flyer_corkscrew_up( /** rct2: 0x00824C6C */ static void lay_down_rc_track_right_flyer_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14830,27 +14736,27 @@ static void lay_down_rc_track_right_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16622, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16622, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16625, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16625, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16628, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16628, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16631, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16631, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -14865,22 +14771,22 @@ static void lay_down_rc_track_right_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -14892,22 +14798,22 @@ static void lay_down_rc_track_right_flyer_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16624, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16624, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16627, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16627, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16630, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16630, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16633, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16633, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -14916,7 +14822,7 @@ static void lay_down_rc_track_right_flyer_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -14934,7 +14840,7 @@ static void lay_down_rc_track_right_flyer_corkscrew_up( /** rct2: 0x00824C7C */ static void lay_down_rc_track_left_flyer_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -14944,22 +14850,22 @@ static void lay_down_rc_track_left_flyer_corkscrew_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16627, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16627, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16630, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16630, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16633, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16633, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16624, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16624, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -14968,7 +14874,7 @@ static void lay_down_rc_track_left_flyer_corkscrew_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -14981,22 +14887,22 @@ static void lay_down_rc_track_left_flyer_corkscrew_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16626, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16629, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16632, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16623, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -15008,27 +14914,27 @@ static void lay_down_rc_track_left_flyer_corkscrew_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16625, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16625, 0, 0, 20, 32, 3, height, 6, 0, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16628, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16628, 0, 0, 20, 32, 3, height, 6, 0, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16631, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16631, 0, 0, 20, 32, 3, height, 6, 0, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16622, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16622, 0, 0, 20, 32, 3, height, 6, 0, height + 4); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -15048,7 +14954,7 @@ static void lay_down_rc_track_left_flyer_corkscrew_down( /** rct2: 0x00824C8C */ static void lay_down_rc_track_right_flyer_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lay_down_rc_track_left_flyer_corkscrew_up(session, ride, 2 - trackSequence, (direction + 3) % 4, height, trackElement); @@ -15056,7 +14962,7 @@ static void lay_down_rc_track_right_flyer_corkscrew_down( /** rct2: 0x00824FEC */ static void lay_down_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -15066,16 +14972,16 @@ static void lay_down_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16232, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16232, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16233, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16233, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -15088,23 +14994,23 @@ static void lay_down_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26559, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26560, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -15113,7 +15019,7 @@ static void lay_down_rc_track_block_brakes( } static void lay_down_rc_track_left_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -15123,22 +15029,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27118, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27118, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27123, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27123, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27128, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27128, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27113, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27113, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; } @@ -15147,7 +15053,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15163,22 +15069,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27117, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27117, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27122, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27122, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27127, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27127, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27112, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27112, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -15194,22 +15100,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -15225,22 +15131,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27115, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27115, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27120, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27120, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27125, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27125, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27110, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27110, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -15256,22 +15162,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27114, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27114, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27119, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27119, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27124, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27124, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27109, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27109, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; } @@ -15280,7 +15186,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15297,7 +15203,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_up( } static void lay_down_rc_track_right_quarter_banked_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -15307,22 +15213,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27089, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27089, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27094, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27094, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27099, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27099, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27104, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27104, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 30); break; } @@ -15331,7 +15237,7 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15347,22 +15253,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27090, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27090, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27095, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27095, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27100, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27100, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27105, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27105, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -15378,22 +15284,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -15409,22 +15315,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27092, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27092, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27097, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27097, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27102, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27102, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27107, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27107, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -15440,22 +15346,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27093, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27093, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27098, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27098, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27103, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27103, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27108, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27108, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 38); break; } @@ -15464,7 +15370,7 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15481,7 +15387,7 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_up( } static void lay_down_rc_track_left_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -15491,22 +15397,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27098, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27098, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27103, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27103, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27108, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27108, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27093, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27093, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; } @@ -15515,7 +15421,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15531,22 +15437,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27097, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27097, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27102, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27102, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27107, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27107, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27092, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27092, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -15562,22 +15468,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27096, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27101, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27106, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27091, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -15593,22 +15499,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27095, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27095, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27100, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27100, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27105, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27105, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27090, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27090, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -15624,22 +15530,22 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27094, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27094, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27099, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27099, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27104, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27104, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27089, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27089, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; } @@ -15648,7 +15554,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -15665,7 +15571,7 @@ static void lay_down_rc_track_left_quarter_banked_helix_large_down( } static void lay_down_rc_track_right_quarter_banked_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -15675,22 +15581,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27109, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27109, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27114, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27114, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27119, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27119, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27124, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 27124, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 38); break; } @@ -15699,7 +15605,7 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -15715,22 +15621,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27110, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27110, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27115, 0, 0, 32, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27115, 0, 0, 32, 16, 3, height + 24, 0, 16, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27120, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27120, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27125, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27125, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 38); break; } @@ -15746,22 +15652,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27111, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27116, 0, 0, 16, 16, 3, height + 24, 16, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27121, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 27126, 0, 0, 16, 16, 3, height + 24, 0, 16, height + 38); break; } @@ -15777,22 +15683,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27112, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27112, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27117, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27117, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27122, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27122, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 38); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27127, 0, 0, 16, 32, 3, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27127, 0, 0, 16, 32, 3, height + 24, 16, 0, height + 38); break; } @@ -15808,22 +15714,22 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27113, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27113, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27118, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27118, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27123, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27123, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 27128, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 27128, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 30); break; } @@ -15832,7 +15738,7 @@ static void lay_down_rc_track_right_quarter_banked_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 39, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { diff --git a/src/openrct2/ride/coaster/LimLaunchedRollerCoaster.cpp b/src/openrct2/ride/coaster/LimLaunchedRollerCoaster.cpp index dc4b837a50..179901d07f 100644 --- a/src/openrct2/ride/coaster/LimLaunchedRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/LimLaunchedRollerCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _LimLauncherBlockBrakeImages[NumOrthogonalDirect /** rct2: 0x008A6D50, 0x008A6D60, 0x008A6D70 */ static void lim_launched_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -46,18 +46,18 @@ static void lim_launched_rc_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _LimLauncherBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], 0, 0, + session, direction, _LimLauncherBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -66,7 +66,7 @@ static void lim_launched_rc_track_station( /** rct2: 0x008A65E0 */ static void lim_launched_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -76,27 +76,27 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15388, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15388, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15396, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15396, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15395, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15395, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15403, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15403, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -115,19 +115,19 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15389, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15389, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15397, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15397, 0, 14, 32, 2, 63, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15394, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15394, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15402, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15402, 0, 6, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -142,22 +142,22 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15390, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15390, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15398, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15398, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15393, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15393, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15401, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15401, 16, 16, 2, 16, 119, height, 16, 16, height); break; } @@ -170,19 +170,19 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15391, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15391, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15399, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15399, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15392, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15392, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15400, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15400, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -203,19 +203,19 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15392, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15392, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15400, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15400, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15391, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15391, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15399, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15399, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -230,22 +230,22 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15393, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15393, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15401, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15401, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15390, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15390, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15398, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15398, 12, 0, 3, 16, 119, height, 12, 0, height); break; } @@ -258,19 +258,19 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15394, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15394, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15402, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15402, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15389, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15389, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15397, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15397, 0, 14, 32, 2, 63, height); break; } paint_util_set_segment_support_height( @@ -285,27 +285,27 @@ static void lim_launched_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15395, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15395, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15403, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15403, 0, 6, 32, 20, 7, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15388, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15388, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15396, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15396, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -329,7 +329,7 @@ static void lim_launched_rc_track_left_vertical_loop( /** rct2: 0x008A65F0 */ static void lim_launched_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -339,22 +339,22 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15419, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15419, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15411, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15411, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15412, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15412, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15404, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15404, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -366,19 +366,19 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15418, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15418, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15410, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15410, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15413, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15413, 0, 14, 32, 2, 63, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15405, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15405, 0, 0, 32, 26, 3, height); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -388,22 +388,22 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15417, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15417, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15409, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15409, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15414, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15414, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15406, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15406, 16, 0, 2, 16, 119, height, 16, 0, height); break; } @@ -414,19 +414,19 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15416, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15416, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15408, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15408, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15415, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15415, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15407, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15407, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -442,19 +442,19 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15415, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15415, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15407, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15407, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15416, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15416, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15408, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15408, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -464,22 +464,22 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15414, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15414, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15406, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15406, 16, 0, 2, 16, 119, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15417, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15417, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15409, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15409, 10, 16, 4, 16, 119, height, 10, 16, height); break; } @@ -490,19 +490,19 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15413, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15413, 0, 14, 32, 2, 63, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15405, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15405, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15418, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15418, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15410, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15410, 0, 6, 32, 26, 3, height); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -512,22 +512,22 @@ static void lim_launched_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15412, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15412, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15404, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15404, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15419, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15419, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15411, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15411, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -546,7 +546,7 @@ static void lim_launched_rc_track_right_vertical_loop( /** rct2: 0x008A6D10 */ static void lim_launched_rc_track_left_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -556,34 +556,34 @@ static void lim_launched_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15758, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15758, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15782, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15782, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15761, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15761, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15785, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15785, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15764, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15764, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15788, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15788, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15767, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15767, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15791, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15791, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -598,30 +598,30 @@ static void lim_launched_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15759, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15759, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15783, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15783, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15762, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15762, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15786, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15786, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15765, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15765, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15789, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15789, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15768, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15768, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15792, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15792, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -637,30 +637,30 @@ static void lim_launched_rc_track_left_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15760, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15760, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15784, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15784, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15763, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15763, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15787, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15787, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15766, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15766, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15790, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15790, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15769, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15769, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15793, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15793, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -683,7 +683,7 @@ static void lim_launched_rc_track_left_twist_down_to_up( /** rct2: 0x008A6D20 */ static void lim_launched_rc_track_right_twist_down_to_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -693,34 +693,34 @@ static void lim_launched_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15770, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15770, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15794, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15794, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15773, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15773, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15797, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15797, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15776, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15776, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15800, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15800, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15779, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15779, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15803, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15803, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -735,30 +735,30 @@ static void lim_launched_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15771, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15771, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15795, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15795, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15774, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15774, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15798, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15798, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15777, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15777, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15801, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15801, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15780, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15780, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15804, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15804, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -774,30 +774,30 @@ static void lim_launched_rc_track_right_twist_down_to_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15772, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15772, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15796, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15796, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15775, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15775, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15799, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15799, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15778, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15778, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15802, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15802, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15781, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15781, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15805, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15805, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -820,7 +820,7 @@ static void lim_launched_rc_track_right_twist_down_to_up( /** rct2: 0x008A6D30 */ static void lim_launched_rc_track_left_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -830,30 +830,30 @@ static void lim_launched_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15766, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15766, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15790, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15790, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15769, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15769, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15793, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15793, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15760, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15760, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15784, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15784, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15763, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15763, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15787, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15787, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -871,30 +871,30 @@ static void lim_launched_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15765, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15765, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15789, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15789, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15768, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15768, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15792, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15792, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15759, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15759, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15783, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15783, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15762, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15762, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15786, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15786, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -910,34 +910,34 @@ static void lim_launched_rc_track_left_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15764, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15764, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15788, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15788, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15767, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15767, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15791, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15791, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15758, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15758, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15782, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15782, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15761, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15761, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15785, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15785, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -957,7 +957,7 @@ static void lim_launched_rc_track_left_twist_up_to_down( /** rct2: 0x008A6D40 */ static void lim_launched_rc_track_right_twist_up_to_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -967,30 +967,30 @@ static void lim_launched_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15778, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15778, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15802, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15802, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15781, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15781, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15805, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15805, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15772, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15772, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15796, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15796, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15775, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15775, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15799, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15799, 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -1008,30 +1008,30 @@ static void lim_launched_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15777, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15777, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15801, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15801, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15780, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15780, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15804, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15804, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15771, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15771, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15795, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15795, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15774, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15774, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15798, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15798, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -1047,34 +1047,34 @@ static void lim_launched_rc_track_right_twist_up_to_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15776, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15776, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15800, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15800, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15779, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15779, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15803, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15803, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15770, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15770, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15794, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15794, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15773, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15773, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15797, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15797, 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1094,7 +1094,7 @@ static void lim_launched_rc_track_right_twist_up_to_down( /** rct2: 0x008A6CD0 */ static void lim_launched_rc_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1104,22 +1104,22 @@ static void lim_launched_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15734, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15734, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15737, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15737, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15740, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15740, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15743, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15743, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } @@ -1137,22 +1137,22 @@ static void lim_launched_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15735, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15735, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15738, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15738, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15741, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15741, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15744, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15744, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -1164,22 +1164,22 @@ static void lim_launched_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15736, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15736, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15739, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15739, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15742, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15742, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15745, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15745, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -1188,7 +1188,7 @@ static void lim_launched_rc_track_left_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1206,7 +1206,7 @@ static void lim_launched_rc_track_left_corkscrew_up( /** rct2: 0x008A6CE0 */ static void lim_launched_rc_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1216,26 +1216,26 @@ static void lim_launched_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15746, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15746, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15749, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15749, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15752, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15752, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15755, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15755, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1250,22 +1250,22 @@ static void lim_launched_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15747, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15747, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15750, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15750, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15753, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15753, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15756, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15756, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -1277,22 +1277,22 @@ static void lim_launched_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15748, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15748, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15751, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15751, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15754, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15754, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15757, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15757, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -1301,7 +1301,7 @@ static void lim_launched_rc_track_right_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1319,7 +1319,7 @@ static void lim_launched_rc_track_right_corkscrew_up( /** rct2: 0x008A6CF0 */ static void lim_launched_rc_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_right_corkscrew_up(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); @@ -1327,7 +1327,7 @@ static void lim_launched_rc_track_left_corkscrew_down( /** rct2: 0x008A6D00 */ static void lim_launched_rc_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_left_corkscrew_up(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); @@ -1335,7 +1335,7 @@ static void lim_launched_rc_track_right_corkscrew_down( /** rct2: 0x008A6D80 */ static void lim_launched_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1343,17 +1343,17 @@ static void lim_launched_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15018, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15018, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15019, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15019, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1363,7 +1363,7 @@ static void lim_launched_rc_track_brakes( /** rct2: 0x008A6C10 */ static void lim_launched_rc_track_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1373,22 +1373,22 @@ static void lim_launched_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15702, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15702, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15703, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15703, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15704, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15704, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15705, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15705, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -1404,7 +1404,7 @@ static void lim_launched_rc_track_90_deg_up( /** rct2: 0x008A6C20 */ static void lim_launched_rc_track_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1412,7 +1412,7 @@ static void lim_launched_rc_track_90_deg_down( /** rct2: 0x008A6C30 */ static void lim_launched_rc_track_60_deg_up_to_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1422,21 +1422,19 @@ static void lim_launched_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15694, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15694, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15695, 0, 0, 2, 20, 55, height, 24, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15695, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15696, 0, 0, 2, 20, 55, height, 24, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15696, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15697, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15697, 0, 0, 32, 20, 3, height, 0, 6, height); break; } if (direction == 0 || direction == 3) @@ -1455,7 +1453,7 @@ static void lim_launched_rc_track_60_deg_up_to_90_deg_up( /** rct2: 0x008A6C40 */ static void lim_launched_rc_track_90_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_60_deg_up_to_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1463,26 +1461,26 @@ static void lim_launched_rc_track_90_deg_down_to_60_deg_down( /** rct2: 0x008A6C50 */ static void lim_launched_rc_track_90_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15698, 0, 0, 6, 20, 3, height, 0, 6, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 15698, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15699, 0, 0, 2, 20, 31, height, 39, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 15699, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15700, 0, 0, 2, 20, 31, height, 39, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 15700, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15701, 0, 0, 6, 20, 3, height, 0, 6, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 15701, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; } switch (direction) @@ -1501,7 +1499,7 @@ static void lim_launched_rc_track_90_deg_up_to_60_deg_up( /** rct2: 0x008A6C60 */ static void lim_launched_rc_track_60_deg_down_to_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1511,22 +1509,22 @@ static void lim_launched_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15700, 0, 0, 2, 20, 31, height, 39, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15700, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15701, 0, 0, 6, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15701, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15698, 0, 0, 6, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15698, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15699, 0, 0, 2, 20, 31, height, 39, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15699, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; } @@ -1545,7 +1543,7 @@ static void lim_launched_rc_track_60_deg_down_to_90_deg_down( /** rct2: 0x008A6C70 */ static void lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1555,22 +1553,22 @@ static void lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15722, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15722, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15725, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15725, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15728, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15728, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15731, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15731, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -1583,23 +1581,21 @@ static void lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15723, 0, 0, 2, 20, 31, height, -8, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15723, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15726, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15726, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15729, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15729, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15732, 0, 0, 2, 20, 31, height, -8, 6, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15732, 0, 0, 2, 20, 31, height, -8, 6, height); break; } paint_util_set_segment_support_height( @@ -1611,22 +1607,22 @@ static void lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15724, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15724, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15727, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15727, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15730, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15730, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15733, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15733, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -1643,7 +1639,7 @@ static void lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( /** rct2: 0x008A6C80 */ static void lim_launched_rc_track_inverted_flat_to_90_deg_quarter_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_90_deg_to_inverted_flat_quarter_loop_up( @@ -1652,17 +1648,17 @@ static void lim_launched_rc_track_inverted_flat_to_90_deg_quarter_loop_down( /** rct2: 0x008A6D90 */ static void lim_launched_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _LimLauncherBlockBrakeImages[direction][isClosed], 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | _LimLauncherBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1671,7 +1667,7 @@ static void lim_launched_rc_track_block_brakes( } static void lim_launched_rc_track_left_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1681,28 +1677,28 @@ static void lim_launched_rc_track_left_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15706, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15706, 0, 0, 2, 20, 63, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15707, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15707, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15715, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15715, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15716, 0, 0, 2, 2, 63, height, 24, 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 15716, 0, 0, 2, 2, 63, height, 24, 24, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15709, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15709, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15717, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15717, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; } @@ -1718,7 +1714,7 @@ static void lim_launched_rc_track_left_quarter_turn_1_90_deg_up( /** rct2: 0x008A6CA0 */ static void lim_launched_rc_track_right_quarter_turn_1_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1728,28 +1724,28 @@ static void lim_launched_rc_track_right_quarter_turn_1_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15710, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15710, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15718, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15718, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15719, 0, 0, 2, 2, 63, height, 24, 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 15719, 0, 0, 2, 2, 63, height, 24, 24, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15712, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15712, 0, 0, 2, 20, 63, height, 4, 6, height + 8); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15720, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15720, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15713, 0, 0, 2, 20, 63, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15713, 0, 0, 2, 20, 63, height, 4, 6, height + 8); break; } @@ -1765,7 +1761,7 @@ static void lim_launched_rc_track_right_quarter_turn_1_90_deg_up( /** rct2: 0x008A6CB0 */ static void lim_launched_rc_track_left_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_right_quarter_turn_1_90_deg_up( @@ -1774,7 +1770,7 @@ static void lim_launched_rc_track_left_quarter_turn_1_90_deg_down( /** rct2: 0x008A6CC0 */ static void lim_launched_rc_track_right_quarter_turn_1_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { lim_launched_rc_track_left_quarter_turn_1_90_deg_up( diff --git a/src/openrct2/ride/coaster/LoopingRollerCoaster.cpp b/src/openrct2/ride/coaster/LoopingRollerCoaster.cpp index 0a2e346770..87fb0f6cc6 100644 --- a/src/openrct2/ride/coaster/LoopingRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/LoopingRollerCoaster.cpp @@ -26,7 +26,7 @@ static constexpr auto SPR_LOOPING_RC_FLAT_CHAINED_NW_SE = 15017; /** rct2: 0x008A6370 */ static void looping_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -35,24 +35,24 @@ static void looping_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15006, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15006, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15007, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15007, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15008, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15008, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15009, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15009, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -62,17 +62,17 @@ static void looping_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -82,7 +82,7 @@ static void looping_rc_track_flat( } static void looping_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint32_t imageIdsFrictionWheels[4][2] = { @@ -100,11 +100,11 @@ static void looping_rc_track_station( const auto& imageIds = is_csg_loaded() ? imageIdsShuttleLaunch : imageIdsFrictionWheels; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -113,7 +113,7 @@ static void looping_rc_track_station( /** rct2: 0x008A6380 */ static void looping_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -122,24 +122,24 @@ static void looping_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15060, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15060, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15061, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15061, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15062, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15062, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15063, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15063, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -148,24 +148,24 @@ static void looping_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15032, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15032, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15033, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15033, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15034, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15034, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15035, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15035, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -183,7 +183,7 @@ static void looping_rc_track_25_deg_up( /** rct2: 0x008A6390 */ static void looping_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -192,24 +192,24 @@ static void looping_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15076, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15076, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15077, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15077, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15078, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15078, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15079, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15079, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -218,24 +218,24 @@ static void looping_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15048, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15048, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15049, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15049, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15050, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15050, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15051, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15051, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -253,7 +253,7 @@ static void looping_rc_track_60_deg_up( /** rct2: 0x008A63A0 */ static void looping_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -262,24 +262,24 @@ static void looping_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15052, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15052, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15053, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15053, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15054, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15054, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15055, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15055, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -288,24 +288,24 @@ static void looping_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15024, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15024, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15025, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15025, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15026, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15026, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15027, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15027, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -323,7 +323,7 @@ static void looping_rc_track_flat_to_25_deg_up( /** rct2: 0x008A63B0 */ static void looping_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -332,28 +332,28 @@ static void looping_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15064, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15064, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15065, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15065, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15068, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15068, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15066, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15066, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15069, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15069, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15067, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15067, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -362,28 +362,28 @@ static void looping_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15036, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15036, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15037, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15037, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15040, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15040, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15038, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15038, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15041, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15041, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15039, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15039, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -401,7 +401,7 @@ static void looping_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A63C0 */ static void looping_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -410,28 +410,28 @@ static void looping_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15070, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15070, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15071, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15071, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15074, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15074, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15072, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15072, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15075, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15075, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15073, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15073, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -440,28 +440,28 @@ static void looping_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15042, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15042, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15043, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15043, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15046, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15046, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15044, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15044, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15047, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15047, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15045, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15045, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -479,7 +479,7 @@ static void looping_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A63D0 */ static void looping_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -488,24 +488,24 @@ static void looping_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15056, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15056, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15057, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15057, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15058, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15058, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15059, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15059, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -514,24 +514,24 @@ static void looping_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15028, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15028, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15029, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15029, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15030, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15030, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15031, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15031, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -549,7 +549,7 @@ static void looping_rc_track_25_deg_up_to_flat( /** rct2: 0x008A63E0 */ static void looping_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -557,7 +557,7 @@ static void looping_rc_track_25_deg_down( /** rct2: 0x008A63F0 */ static void looping_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -565,7 +565,7 @@ static void looping_rc_track_60_deg_down( /** rct2: 0x008A6400 */ static void looping_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -573,7 +573,7 @@ static void looping_rc_track_flat_to_25_deg_down( /** rct2: 0x008A6410 */ static void looping_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -581,7 +581,7 @@ static void looping_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A6420 */ static void looping_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -589,7 +589,7 @@ static void looping_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A6430 */ static void looping_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -597,7 +597,7 @@ static void looping_rc_track_25_deg_down_to_flat( /** rct2: 0x008A6440 */ static void looping_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -607,22 +607,22 @@ static void looping_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15183, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15183, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15188, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15188, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15193, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15193, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15178, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15178, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -639,21 +639,19 @@ static void looping_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15182, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15182, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15187, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15187, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15192, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15192, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15177, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15177, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -668,22 +666,20 @@ static void looping_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15181, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15181, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15186, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15186, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15191, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15191, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15176, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15176, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -698,21 +694,19 @@ static void looping_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15180, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15180, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15185, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15185, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15190, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15190, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15175, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15175, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -727,22 +721,22 @@ static void looping_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15179, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15179, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15184, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15184, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15189, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15189, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15174, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15174, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -761,7 +755,7 @@ static void looping_rc_track_left_quarter_turn_5( /** rct2: 0x008A6450 */ static void looping_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -770,35 +764,35 @@ static void looping_rc_track_right_quarter_turn_5( /** rct2: 0x008A6460 */ static void looping_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15080, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15080, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15092, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15092, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15081, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15081, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15093, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15093, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15082, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15082, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15083, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15083, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -808,35 +802,35 @@ static void looping_rc_track_flat_to_left_bank( /** rct2: 0x008A6470 */ static void looping_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15084, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15084, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15085, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15085, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15086, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15086, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15094, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15094, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15087, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15087, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15095, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15095, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -846,35 +840,35 @@ static void looping_rc_track_flat_to_right_bank( /** rct2: 0x008A6480 */ static void looping_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15086, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15086, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15094, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15094, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15087, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15087, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15095, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15095, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15084, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15084, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15085, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15085, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -884,35 +878,35 @@ static void looping_rc_track_left_bank_to_flat( /** rct2: 0x008A6490 */ static void looping_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15082, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15082, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15083, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15083, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15080, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15080, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15092, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15092, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15081, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15081, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15093, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15093, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -922,7 +916,7 @@ static void looping_rc_track_right_bank_to_flat( /** rct2: 0x008A64A0 */ static void looping_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -932,26 +926,24 @@ static void looping_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15203, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15203, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15214, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15214, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15208, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15208, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15213, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15213, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15198, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15198, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -968,22 +960,20 @@ static void looping_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15202, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15202, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15207, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15207, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15212, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15212, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15197, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15197, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -998,22 +988,20 @@ static void looping_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15201, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15201, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15206, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15206, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15211, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15211, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15196, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15196, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1028,22 +1016,20 @@ static void looping_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15200, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15200, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15205, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15205, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15210, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15210, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15195, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15195, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1058,26 +1044,24 @@ static void looping_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15199, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15199, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15204, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15204, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15209, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15209, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15215, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15215, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15194, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15194, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1096,7 +1080,7 @@ static void looping_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008A64B0 */ static void looping_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1105,35 +1089,35 @@ static void looping_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008A64C0 */ static void looping_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15096, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15096, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15112, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15112, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15097, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15097, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15113, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15113, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15098, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15098, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15099, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15099, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1150,35 +1134,35 @@ static void looping_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008A64D0 */ static void looping_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15100, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15100, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15101, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15101, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15102, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15102, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15114, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15114, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15103, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15103, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15115, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15115, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1195,35 +1179,35 @@ static void looping_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008A64E0 */ static void looping_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15104, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15104, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15116, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15116, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15105, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15105, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15117, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15117, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15106, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15106, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15107, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15107, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1240,35 +1224,35 @@ static void looping_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008A64F0 */ static void looping_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15108, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15108, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15109, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15109, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15110, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15110, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15118, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15118, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15111, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15111, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15119, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15119, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1285,7 +1269,7 @@ static void looping_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008A6500 */ static void looping_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1293,7 +1277,7 @@ static void looping_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008A6510 */ static void looping_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1301,7 +1285,7 @@ static void looping_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008A6520 */ static void looping_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1309,7 +1293,7 @@ static void looping_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008A6530 */ static void looping_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1317,31 +1301,31 @@ static void looping_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008A6540 */ static void looping_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15088, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15088, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15089, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15089, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15090, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15090, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15091, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15091, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1351,7 +1335,7 @@ static void looping_rc_track_left_bank( /** rct2: 0x008A6550 */ static void looping_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1359,7 +1343,7 @@ static void looping_rc_track_right_bank( /** rct2: 0x008A6560 */ static void looping_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1369,22 +1353,22 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15296, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15296, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15301, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15301, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15306, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15306, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15311, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15311, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -1401,21 +1385,19 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15297, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15297, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15302, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15302, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15307, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15307, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15312, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15312, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1430,22 +1412,20 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15298, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15298, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15303, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15303, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15308, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15308, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15313, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15313, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1460,21 +1440,19 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15299, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15299, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15304, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15304, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15309, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15309, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15314, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15314, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1489,22 +1467,22 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15300, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15300, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15305, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15305, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15310, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15310, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15315, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15315, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1523,7 +1501,7 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A6570 */ static void looping_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1533,22 +1511,22 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15276, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15276, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15281, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15281, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15286, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15286, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15291, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15291, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -1565,21 +1543,19 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15277, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15277, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15282, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15282, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15287, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15287, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15292, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15292, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1594,22 +1570,20 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15278, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15278, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15283, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15283, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15288, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15288, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15293, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15293, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1624,21 +1598,19 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15279, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15279, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15284, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15284, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15289, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15289, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15294, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15294, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1653,22 +1625,22 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15280, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15280, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15285, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15285, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15290, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15290, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15295, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15295, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -1687,7 +1659,7 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A6580 */ static void looping_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1696,7 +1668,7 @@ static void looping_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A6590 */ static void looping_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1705,7 +1677,7 @@ static void looping_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A65A0 */ static void looping_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1715,22 +1687,22 @@ static void looping_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15260, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15260, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15264, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15263, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15263, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15267, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15267, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1744,23 +1716,23 @@ static void looping_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15261, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15261, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15265, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15265, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15262, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15262, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15266, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15266, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -1775,23 +1747,23 @@ static void looping_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15262, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15262, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15266, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15266, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15261, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15261, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15265, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15265, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1806,22 +1778,22 @@ static void looping_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15263, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15263, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15267, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15267, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15260, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15260, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15264, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15264, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1840,7 +1812,7 @@ static void looping_rc_track_s_bend_left( /** rct2: 0x008A65B0 */ static void looping_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1850,22 +1822,22 @@ static void looping_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15268, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15268, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15272, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15272, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15271, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15271, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15275, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15275, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1879,23 +1851,23 @@ static void looping_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15269, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15269, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15273, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15273, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15270, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15270, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15274, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15274, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -1910,23 +1882,23 @@ static void looping_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15270, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15270, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15274, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15274, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15269, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15269, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15273, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15273, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1941,22 +1913,22 @@ static void looping_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15271, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15271, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15275, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15275, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15268, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15268, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15272, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15272, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -1975,7 +1947,7 @@ static void looping_rc_track_s_bend_right( /** rct2: 0x008A65C0 */ static void looping_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1985,19 +1957,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15348, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15348, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15356, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15356, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15355, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15355, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15363, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15363, 0, 6, 32, 20, 7, height); break; } if (direction == 0 || direction == 3) @@ -2016,19 +1988,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15349, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15349, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15357, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15357, 0, 14, 32, 2, 63, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15354, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15354, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15362, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15362, 0, 6, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -2043,42 +2015,42 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15350, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15350, 16, 0, 3, 16, 119, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15358, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15358, 12, 0, 3, 16, 119, height, 12, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15353, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15353, 10, 16, 4, 16, 119, height, 10, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15361, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15361, 16, 16, 2, 16, 119, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16, height); break; } @@ -2091,19 +2063,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15351, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15351, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15359, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15359, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15352, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15352, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15360, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15360, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2124,19 +2096,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15352, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15352, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15360, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15360, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15351, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15351, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15359, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15359, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2151,42 +2123,42 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15353, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15353, 10, 16, 4, 16, 119, height, 10, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15365, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15361, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15361, 16, 16, 2, 16, 119, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15367, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15350, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15350, 16, 0, 3, 16, 119, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_CENTRED, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15364, 16, 0, 3, 16, 119, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15358, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15358, 12, 0, 3, 16, 119, height, 12, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15366, 12, 0, 3, 16, 119, height, 12, 0, height); break; } @@ -2199,19 +2171,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15354, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15354, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15362, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15362, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15349, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15349, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15357, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15357, 0, 14, 32, 2, 63, height); break; } paint_util_set_segment_support_height( @@ -2226,19 +2198,19 @@ static void looping_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15355, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15355, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15363, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15363, 0, 6, 32, 20, 7, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15348, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15348, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15356, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15356, 0, 6, 32, 20, 3, height); break; } switch (direction) @@ -2262,7 +2234,7 @@ static void looping_rc_track_left_vertical_loop( /** rct2: 0x008A65D0 */ static void looping_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2272,19 +2244,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15383, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15383, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15375, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15376, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15376, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15368, 0, 6, 32, 20, 3, height); break; } if (direction == 0 || direction == 3) @@ -2298,19 +2270,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15382, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15382, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15374, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15374, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15377, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15377, 0, 14, 32, 2, 63, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15369, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15369, 0, 0, 32, 26, 3, height); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2320,42 +2292,42 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15381, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15381, 16, 16, 2, 16, 119, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15373, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15373, 10, 16, 4, 16, 119, height, 10, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15378, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15378, 12, 0, 3, 16, 119, height, 12, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15370, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15370, 16, 0, 2, 16, 119, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0, height); break; } @@ -2366,19 +2338,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15380, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15380, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15372, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15372, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15379, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15379, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15371, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15371, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2394,19 +2366,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15379, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15379, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15371, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15371, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15380, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15380, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15372, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 15372, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2416,42 +2388,42 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15378, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15378, 12, 0, 3, 16, 119, height, 12, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_CENTRED, 0, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15385, 12, 0, 3, 16, 119, height, 12, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15370, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15370, 16, 0, 2, 16, 119, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT_CENTRED, 2, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15387, 16, 0, 2, 16, 119, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15381, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15381, 16, 16, 2, 16, 119, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK, 3, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15384, 16, 16, 2, 16, 119, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15373, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15373, 10, 16, 4, 16, 119, height, 10, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session->TrackColours[SCHEME_TRACK]); + session, METAL_SUPPORTS_THICK_ALT, 1, 0, height - 8, session.TrackColours[SCHEME_TRACK]); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15386, 10, 16, 4, 16, 119, height, 10, 16, height); break; } @@ -2462,19 +2434,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15377, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15377, 0, 14, 32, 2, 63, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15369, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15369, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15382, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15382, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15374, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15374, 0, 6, 32, 26, 3, height); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2484,19 +2456,19 @@ static void looping_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15376, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15376, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15368, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15383, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15383, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15375, 0, 6, 32, 20, 3, height); break; } switch (direction) @@ -2517,7 +2489,7 @@ static void looping_rc_track_right_vertical_loop( /** rct2: 0x008A6630 */ static void looping_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2527,22 +2499,22 @@ static void looping_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15125, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15125, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15128, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15128, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15131, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15131, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15122, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15122, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2559,21 +2531,19 @@ static void looping_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15124, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15124, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15127, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15127, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15130, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15130, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15121, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15121, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2586,22 +2556,22 @@ static void looping_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15123, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15123, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15126, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15126, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15129, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15129, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15120, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15120, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2620,7 +2590,7 @@ static void looping_rc_track_left_quarter_turn_3( /** rct2: 0x008A6640 */ static void looping_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2629,7 +2599,7 @@ static void looping_rc_track_right_quarter_turn_3( /** rct2: 0x008A6650 */ static void looping_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2639,26 +2609,24 @@ static void looping_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15137, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15137, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15144, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15144, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15140, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15140, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15143, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15143, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15134, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15134, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2675,22 +2643,20 @@ static void looping_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15136, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15136, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15139, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15139, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15142, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15142, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15133, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15133, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2703,26 +2669,24 @@ static void looping_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15135, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15135, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15138, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15138, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15141, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15141, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15145, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15145, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15132, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15132, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2741,7 +2705,7 @@ static void looping_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008A6660 */ static void looping_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2750,7 +2714,7 @@ static void looping_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008A6670 */ static void looping_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2760,22 +2724,22 @@ static void looping_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15327, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15327, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15329, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15329, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15331, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15331, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15325, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15325, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2795,22 +2759,22 @@ static void looping_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15326, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15326, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15328, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15328, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15330, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15330, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15324, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15324, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2829,7 +2793,7 @@ static void looping_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A6680 */ static void looping_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2839,22 +2803,22 @@ static void looping_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15316, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15316, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15318, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15318, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15320, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15320, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15322, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15322, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2874,27 +2838,27 @@ static void looping_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15317, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15317, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15319, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15319, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15321, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15321, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15323, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15323, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2915,7 +2879,7 @@ static void looping_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A6690 */ static void looping_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2924,7 +2888,7 @@ static void looping_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A66A0 */ static void looping_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2933,7 +2897,7 @@ static void looping_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A66B0 */ static void looping_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2943,26 +2907,24 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15165, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15165, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15172, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15172, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15168, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15168, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15171, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15171, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15162, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15162, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2980,22 +2942,20 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15164, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15164, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15167, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15167, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15170, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15170, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15161, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15161, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3008,26 +2968,24 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15163, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15163, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15166, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15166, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15169, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15169, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15173, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15173, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15160, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15160, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3047,26 +3005,24 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15162, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15162, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15165, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15165, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15172, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15172, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15168, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15168, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15171, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15171, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3089,23 +3045,21 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15161, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15161, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15164, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15164, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15167, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15167, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15170, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15170, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3117,26 +3071,24 @@ static void looping_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15160, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15163, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15163, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15166, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15169, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15169, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15173, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15173, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3151,7 +3103,7 @@ static void looping_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008A66C0 */ static void looping_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3161,26 +3113,24 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15146, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15146, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15149, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15149, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15152, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15152, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15155, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15155, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15159, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15159, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3198,23 +3148,21 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15147, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15147, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15150, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15150, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15153, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15153, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15156, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15156, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3226,26 +3174,24 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15148, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15148, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15151, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15151, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15158, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15158, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15154, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15154, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15157, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15157, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3265,26 +3211,24 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15149, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15149, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15152, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15152, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15155, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15155, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15159, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15159, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15146, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15146, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3307,22 +3251,20 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15150, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15150, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15153, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15153, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15156, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15156, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15147, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15147, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3335,26 +3277,24 @@ static void looping_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15151, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15151, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15158, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15158, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15154, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15154, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15157, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15157, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15148, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15148, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3369,7 +3309,7 @@ static void looping_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008A66D0 */ static void looping_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3383,7 +3323,7 @@ static void looping_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008A66E0 */ static void looping_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3397,7 +3337,7 @@ static void looping_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008A66F0 */ static void looping_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3407,26 +3347,24 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15247, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15247, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15258, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15258, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15252, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15252, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15257, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15257, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15242, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15242, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3444,22 +3382,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15246, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15246, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15251, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15251, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15256, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15256, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15241, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15241, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3474,22 +3410,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15245, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15245, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15250, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15250, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15255, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15255, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15240, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15240, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3504,22 +3438,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15244, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15244, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15249, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15249, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15254, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15254, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15239, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15239, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3534,26 +3466,24 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15243, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15243, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15248, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15248, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15253, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15253, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15259, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15259, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15238, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15238, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3573,26 +3503,24 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15242, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15242, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15247, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15247, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15258, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15258, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15252, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15252, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15257, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15257, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3615,22 +3543,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15241, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15241, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15246, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15246, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15251, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15251, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15256, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15256, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3645,22 +3571,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15240, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15240, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15245, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15245, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15250, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15250, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15255, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15255, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3675,22 +3599,20 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15239, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15239, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15244, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15244, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15249, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15249, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15254, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15254, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3705,26 +3627,24 @@ static void looping_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15238, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15238, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15243, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15243, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15248, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15248, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15253, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15253, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15259, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15259, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3739,7 +3659,7 @@ static void looping_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008A6700 */ static void looping_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3749,26 +3669,24 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15216, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15216, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15221, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15221, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15226, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15226, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15231, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15231, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15237, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15237, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3786,22 +3704,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15217, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15217, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15222, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15222, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15227, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15227, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15232, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15232, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3816,22 +3732,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15218, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15218, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15223, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15223, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15228, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15228, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15233, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15233, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3846,22 +3760,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15219, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15219, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15224, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15224, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15229, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15229, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15234, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15234, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3876,26 +3788,24 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15220, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15220, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15225, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15225, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15236, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15236, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15230, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15230, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15235, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15235, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3915,26 +3825,24 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15221, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15221, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15226, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15226, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15231, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15231, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15237, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15237, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15216, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15216, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3957,22 +3865,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15222, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15222, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15227, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15227, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15232, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15232, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15217, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15217, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3987,22 +3893,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15223, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15223, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15228, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15228, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15233, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15233, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15218, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15218, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4017,22 +3921,20 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15224, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15224, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15229, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15229, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15234, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15234, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15219, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15219, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4047,26 +3949,24 @@ static void looping_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15225, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15225, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15236, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15236, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15230, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15230, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15235, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15235, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15220, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15220, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4081,7 +3981,7 @@ static void looping_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008A6710 */ static void looping_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4095,7 +3995,7 @@ static void looping_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008A6720 */ static void looping_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4109,34 +4009,34 @@ static void looping_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008A6750 */ static void looping_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15341, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15341, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15345, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15345, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15342, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15342, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15346, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15346, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15343, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15343, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15347, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15347, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15340, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15340, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15344, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15344, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2); @@ -4146,34 +4046,34 @@ static void looping_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008A6730 */ static void looping_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15332, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15332, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15336, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15336, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15333, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15333, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15337, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15337, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15334, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15334, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15338, 0, 0, 2, 28, 59, height, 28, 2, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 15338, 0, 0, 2, 28, 59, height, 28, 2, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15335, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15335, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15339, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 15339, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_1, +56, TUNNEL_2); @@ -4183,7 +4083,7 @@ static void looping_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008A6740 */ static void looping_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -4191,7 +4091,7 @@ static void looping_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008A6760 */ static void looping_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -4199,7 +4099,7 @@ static void looping_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008A6770 */ static void looping_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4207,21 +4107,21 @@ static void looping_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15012, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15012, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15014, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15014, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15013, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15013, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15015, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15015, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -4231,31 +4131,31 @@ static void looping_rc_track_brakes( /** rct2: 0x008A6A40 */ static void looping_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15594, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15594, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15595, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15595, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15596, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15596, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15597, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15597, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4272,31 +4172,31 @@ static void looping_rc_track_25_deg_up_left_banked( /** rct2: 0x008A6A50 */ static void looping_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15598, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15598, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15599, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15599, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15600, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15600, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15601, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15601, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -4313,42 +4213,42 @@ static void looping_rc_track_25_deg_up_right_banked( /** rct2: 0x008A6780 */ static void looping_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15004, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_MISC] | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15005, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4359,7 +4259,7 @@ static void looping_rc_track_on_ride_photo( /** rct2: 0x008A6A60 */ static void looping_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -4367,7 +4267,7 @@ static void looping_rc_track_25_deg_down_left_banked( /** rct2: 0x008A6A70 */ static void looping_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -4375,7 +4275,7 @@ static void looping_rc_track_25_deg_down_right_banked( /** rct2: 0x008A6860 */ static void looping_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4385,22 +4285,22 @@ static void looping_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15526, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15526, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15530, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15530, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15534, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15534, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15538, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15538, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4414,21 +4314,19 @@ static void looping_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15527, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15527, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15531, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15531, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15535, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15535, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15539, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15539, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4443,22 +4341,20 @@ static void looping_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15528, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15528, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15532, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15532, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15536, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15536, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15540, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15540, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4476,30 +4372,28 @@ static void looping_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15529, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15529, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15533, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15533, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15537, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15537, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15541, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15541, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4514,7 +4408,7 @@ static void looping_rc_track_left_eighth_to_diag( /** rct2: 0x008A6870 */ static void looping_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4524,22 +4418,22 @@ static void looping_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15510, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15510, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15514, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15514, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15518, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15518, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15522, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15522, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4553,21 +4447,19 @@ static void looping_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15511, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15511, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15515, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15515, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15519, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15519, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15523, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15523, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4582,21 +4474,19 @@ static void looping_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15512, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15512, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15516, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15516, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15520, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15520, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15524, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15524, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4614,30 +4504,28 @@ static void looping_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15513, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15513, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15517, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15517, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15521, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15521, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15525, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15525, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4652,7 +4540,7 @@ static void looping_rc_track_right_eighth_to_diag( /** rct2: 0x008A6880 */ static void looping_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4661,7 +4549,7 @@ static void looping_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A6890 */ static void looping_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4670,7 +4558,7 @@ static void looping_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A68A0 */ static void looping_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4680,24 +4568,22 @@ static void looping_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15558, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15558, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15562, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15562, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15566, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15566, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15570, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15570, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4711,22 +4597,20 @@ static void looping_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15559, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15559, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15563, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15563, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15567, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15567, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15571, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15571, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4741,22 +4625,20 @@ static void looping_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15560, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15560, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15564, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15564, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15568, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15568, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15572, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15572, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4774,30 +4656,29 @@ static void looping_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15561, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15561, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15565, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15565, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15569, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15569, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15573, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15573, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4812,7 +4693,7 @@ static void looping_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008A68B0 */ static void looping_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4822,24 +4703,22 @@ static void looping_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15542, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15542, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15546, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15546, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15550, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15550, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15554, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15554, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4853,22 +4732,20 @@ static void looping_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15543, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15543, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15547, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15547, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15551, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15551, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15555, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15555, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4883,22 +4760,20 @@ static void looping_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15544, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15544, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15548, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15548, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15552, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 15552, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15556, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15556, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4916,30 +4791,29 @@ static void looping_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15545, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15545, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15549, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15549, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15553, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15553, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15557, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15557, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4954,7 +4828,7 @@ static void looping_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008A68C0 */ static void looping_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4963,7 +4837,7 @@ static void looping_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008A68D0 */ static void looping_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4972,7 +4846,7 @@ static void looping_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008A6790 */ static void looping_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4984,7 +4858,7 @@ static void looping_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15451, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15451, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4995,7 +4869,7 @@ static void looping_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15423, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15423, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5011,7 +4885,7 @@ static void looping_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15448, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15448, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5022,7 +4896,7 @@ static void looping_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15420, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15420, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5038,7 +4912,7 @@ static void looping_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15450, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15450, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5049,7 +4923,7 @@ static void looping_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15422, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15422, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5065,22 +4939,22 @@ static void looping_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15449, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15449, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5090,22 +4964,22 @@ static void looping_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15421, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15421, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5118,7 +4992,7 @@ static void looping_rc_track_diag_flat( /** rct2: 0x008A67C0 */ static void looping_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5130,7 +5004,7 @@ static void looping_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15463, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15463, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5141,7 +5015,7 @@ static void looping_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15435, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15435, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5157,7 +5031,7 @@ static void looping_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15460, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15460, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5168,7 +5042,7 @@ static void looping_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15432, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15432, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5184,7 +5058,7 @@ static void looping_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15462, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15462, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5195,7 +5069,7 @@ static void looping_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15434, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15434, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5211,22 +5085,22 @@ static void looping_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15461, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15461, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5236,22 +5110,22 @@ static void looping_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15433, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15433, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5264,7 +5138,7 @@ static void looping_rc_track_diag_25_deg_up( /** rct2: 0x008A67F0 */ static void looping_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5276,7 +5150,7 @@ static void looping_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15475, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15475, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5287,7 +5161,7 @@ static void looping_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15447, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15447, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5303,7 +5177,7 @@ static void looping_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15472, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15472, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5314,7 +5188,7 @@ static void looping_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15444, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15444, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5330,7 +5204,7 @@ static void looping_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15474, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15474, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5341,7 +5215,7 @@ static void looping_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15446, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15446, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5357,22 +5231,22 @@ static void looping_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15473, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15473, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5382,22 +5256,22 @@ static void looping_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15445, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15445, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5410,7 +5284,7 @@ static void looping_rc_track_diag_60_deg_up( /** rct2: 0x008A67A0 */ static void looping_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5422,7 +5296,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15455, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15455, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5433,7 +5307,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15427, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15427, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5449,7 +5323,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15452, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15452, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5460,7 +5334,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15424, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15424, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5476,7 +5350,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15454, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15454, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5487,7 +5361,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15426, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15426, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5503,22 +5377,22 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15453, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15453, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5528,22 +5402,22 @@ static void looping_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15425, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15425, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5556,7 +5430,7 @@ static void looping_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A67D0 */ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5568,7 +5442,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15467, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15467, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5579,7 +5453,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15439, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15439, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5595,7 +5469,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15464, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15464, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5606,7 +5480,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15436, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15436, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5622,7 +5496,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15466, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15466, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5633,7 +5507,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15438, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15438, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5649,22 +5523,22 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15465, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15465, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5674,22 +5548,22 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15437, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15437, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5702,7 +5576,7 @@ static void looping_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A67E0 */ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5714,7 +5588,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15471, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15471, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5725,7 +5599,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15443, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15443, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5741,7 +5615,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15468, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15468, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5752,7 +5626,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15440, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15440, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5768,7 +5642,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15470, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15470, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5779,7 +5653,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15442, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15442, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5795,22 +5669,22 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15469, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15469, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5820,22 +5694,22 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15441, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15441, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5848,7 +5722,7 @@ static void looping_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A67B0 */ static void looping_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5860,7 +5734,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15459, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15459, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5871,7 +5745,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15431, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15431, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5887,7 +5761,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15456, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15456, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5898,7 +5772,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15428, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15428, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5914,7 +5788,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15458, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15458, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5925,7 +5799,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15430, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15430, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5941,22 +5815,22 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15457, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15457, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5966,22 +5840,22 @@ static void looping_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15429, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15429, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5994,7 +5868,7 @@ static void looping_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A6820 */ static void looping_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6006,7 +5880,7 @@ static void looping_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15461, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15461, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6017,7 +5891,7 @@ static void looping_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15433, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15433, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6033,7 +5907,7 @@ static void looping_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15462, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15462, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6044,7 +5918,7 @@ static void looping_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15434, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15434, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6060,7 +5934,7 @@ static void looping_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15460, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15460, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6071,7 +5945,7 @@ static void looping_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15432, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15432, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6087,22 +5961,22 @@ static void looping_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15463, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15463, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6112,22 +5986,22 @@ static void looping_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15435, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15435, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6140,7 +6014,7 @@ static void looping_rc_track_diag_25_deg_down( /** rct2: 0x008A6850 */ static void looping_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6152,7 +6026,7 @@ static void looping_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15473, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15473, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6163,7 +6037,7 @@ static void looping_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15445, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15445, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6179,7 +6053,7 @@ static void looping_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15474, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15474, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6190,7 +6064,7 @@ static void looping_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15446, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15446, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6206,7 +6080,7 @@ static void looping_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15472, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15472, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6217,7 +6091,7 @@ static void looping_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15444, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15444, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6233,22 +6107,22 @@ static void looping_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15475, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15475, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6258,22 +6132,22 @@ static void looping_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15447, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15447, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6286,7 +6160,7 @@ static void looping_rc_track_diag_60_deg_down( /** rct2: 0x008A6800 */ static void looping_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6298,7 +6172,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15457, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15457, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6309,7 +6183,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15429, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15429, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6324,7 +6198,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15458, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15458, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6335,7 +6209,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15430, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15430, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6350,7 +6224,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15456, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15456, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6361,7 +6235,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15428, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15428, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6376,22 +6250,22 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15459, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15459, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6401,22 +6275,22 @@ static void looping_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15431, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15431, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6430,7 +6304,7 @@ static void looping_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A6830 */ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6442,7 +6316,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15469, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15469, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6453,7 +6327,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15441, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15441, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6469,7 +6343,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15470, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15470, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6480,7 +6354,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15442, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15442, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6496,7 +6370,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15468, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15468, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6507,7 +6381,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15440, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15440, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6523,22 +6397,22 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15471, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15471, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6548,22 +6422,22 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15443, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15443, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6576,7 +6450,7 @@ static void looping_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A6840 */ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6588,7 +6462,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15465, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15465, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6599,7 +6473,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15437, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15437, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6615,7 +6489,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15466, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15466, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6626,7 +6500,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15438, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15438, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6642,7 +6516,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15464, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15464, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6653,7 +6527,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15436, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15436, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6669,22 +6543,22 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15467, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15467, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6694,22 +6568,22 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15439, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15439, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6722,7 +6596,7 @@ static void looping_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A6810 */ static void looping_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6734,7 +6608,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15453, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15453, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6745,7 +6619,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15425, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15425, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6761,7 +6635,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15454, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15454, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6772,7 +6646,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15426, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15426, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6788,7 +6662,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15452, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15452, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6799,7 +6673,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15424, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15424, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6815,22 +6689,22 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15455, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15455, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6840,22 +6714,22 @@ static void looping_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15427, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15427, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6868,7 +6742,7 @@ static void looping_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A6900 */ static void looping_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6878,7 +6752,7 @@ static void looping_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15503, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15503, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6891,10 +6765,10 @@ static void looping_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15500, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15500, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15504, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15504, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6907,7 +6781,7 @@ static void looping_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15502, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15502, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6920,22 +6794,22 @@ static void looping_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15501, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15501, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6947,7 +6821,7 @@ static void looping_rc_track_diag_flat_to_left_bank( /** rct2: 0x008A6910 */ static void looping_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6957,7 +6831,7 @@ static void looping_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15508, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15508, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6970,7 +6844,7 @@ static void looping_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15505, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15505, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6983,10 +6857,10 @@ static void looping_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15507, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15507, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15509, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15509, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6999,22 +6873,22 @@ static void looping_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15506, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15506, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7026,7 +6900,7 @@ static void looping_rc_track_diag_flat_to_right_bank( /** rct2: 0x008A6920 */ static void looping_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7036,7 +6910,7 @@ static void looping_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15506, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15506, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7049,10 +6923,10 @@ static void looping_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15507, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15507, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15509, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15509, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7065,7 +6939,7 @@ static void looping_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15505, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15505, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7078,22 +6952,22 @@ static void looping_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15508, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15508, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7105,7 +6979,7 @@ static void looping_rc_track_diag_left_bank_to_flat( /** rct2: 0x008A6930 */ static void looping_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7115,7 +6989,7 @@ static void looping_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15501, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15501, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7128,7 +7002,7 @@ static void looping_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15502, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15502, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7141,10 +7015,10 @@ static void looping_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15500, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15500, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15504, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15504, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7157,22 +7031,22 @@ static void looping_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15503, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15503, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7184,7 +7058,7 @@ static void looping_rc_track_diag_right_bank_to_flat( /** rct2: 0x008A6960 */ static void looping_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7194,7 +7068,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15493, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15493, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7207,10 +7081,10 @@ static void looping_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15490, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15490, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15494, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15494, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7223,7 +7097,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15492, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15492, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7236,22 +7110,22 @@ static void looping_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15491, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15491, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7263,7 +7137,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008A6970 */ static void looping_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7273,7 +7147,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15498, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15498, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7286,7 +7160,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15495, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15495, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7299,10 +7173,10 @@ static void looping_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15497, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15497, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15499, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15499, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7315,22 +7189,22 @@ static void looping_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15496, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15496, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7342,7 +7216,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008A6940 */ static void looping_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7352,7 +7226,7 @@ static void looping_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15483, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15483, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7365,10 +7239,10 @@ static void looping_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15480, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15480, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15484, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15484, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7381,7 +7255,7 @@ static void looping_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15482, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15482, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7394,22 +7268,22 @@ static void looping_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15481, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15481, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7421,7 +7295,7 @@ static void looping_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008A6950 */ static void looping_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7431,7 +7305,7 @@ static void looping_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15488, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15488, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7444,7 +7318,7 @@ static void looping_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15485, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15485, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7457,10 +7331,10 @@ static void looping_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15487, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15487, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15489, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15489, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7473,22 +7347,22 @@ static void looping_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15486, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15486, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7500,7 +7374,7 @@ static void looping_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008A6980 */ static void looping_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7510,7 +7384,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15486, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15486, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7522,10 +7396,10 @@ static void looping_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15487, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15487, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15489, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15489, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7537,7 +7411,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15485, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15485, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7549,22 +7423,22 @@ static void looping_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15488, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15488, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7577,7 +7451,7 @@ static void looping_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008A6990 */ static void looping_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7587,7 +7461,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15481, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15481, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7599,7 +7473,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15482, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15482, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7611,10 +7485,10 @@ static void looping_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15480, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15480, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15484, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15484, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7626,22 +7500,22 @@ static void looping_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15483, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15483, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7654,7 +7528,7 @@ static void looping_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008A69A0 */ static void looping_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7664,7 +7538,7 @@ static void looping_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15496, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15496, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7677,10 +7551,10 @@ static void looping_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15497, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15497, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15499, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15499, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7693,7 +7567,7 @@ static void looping_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15495, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15495, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7706,22 +7580,22 @@ static void looping_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15498, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15498, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7733,7 +7607,7 @@ static void looping_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008A69B0 */ static void looping_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7743,7 +7617,7 @@ static void looping_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15491, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15491, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7756,7 +7630,7 @@ static void looping_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15492, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15492, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7769,10 +7643,10 @@ static void looping_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15490, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15490, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15494, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15494, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7785,22 +7659,22 @@ static void looping_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15493, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15493, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7812,7 +7686,7 @@ static void looping_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008A68E0 */ static void looping_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7822,7 +7696,7 @@ static void looping_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15479, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15479, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7835,7 +7709,7 @@ static void looping_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15476, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15476, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7848,7 +7722,7 @@ static void looping_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15478, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15478, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7861,22 +7735,22 @@ static void looping_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15477, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15477, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7888,7 +7762,7 @@ static void looping_rc_track_diag_left_bank( /** rct2: 0x008A68F0 */ static void looping_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7898,7 +7772,7 @@ static void looping_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15477, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15477, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7911,7 +7785,7 @@ static void looping_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15478, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15478, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7924,7 +7798,7 @@ static void looping_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15476, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15476, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7937,22 +7811,22 @@ static void looping_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15479, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15479, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7964,7 +7838,7 @@ static void looping_rc_track_diag_right_bank( /** rct2: 0x008A6C00 */ static void looping_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7972,21 +7846,21 @@ static void looping_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15012, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15012, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15014, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15014, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15013, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15013, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15015, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15015, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -7996,7 +7870,7 @@ static void looping_rc_track_block_brakes( /** rct2: 0x008A6BC0 */ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8006,23 +7880,22 @@ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15689, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15689, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15691, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15691, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15693, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15693, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15687, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15687, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -8042,24 +7915,22 @@ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15688, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15688, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15690, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15690, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15692, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15692, 6, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15686, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15686, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8078,7 +7949,7 @@ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A6BD0 */ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8088,23 +7959,22 @@ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15678, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15678, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15680, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15680, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15682, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15682, 0, 6, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15684, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15684, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -8124,29 +7994,27 @@ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15679, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15679, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15681, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15681, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15683, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15683, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15685, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15685, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8167,7 +8035,7 @@ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A6BE0 */ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -8177,7 +8045,7 @@ static void looping_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A6BF0 */ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -8187,7 +8055,7 @@ static void looping_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A6B80 */ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8197,23 +8065,22 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15658, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15658, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15663, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15663, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15668, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15668, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15673, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15673, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -8230,22 +8097,19 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15659, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15659, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15664, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15664, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15669, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15669, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15674, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15674, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -8260,22 +8124,19 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15660, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15660, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15665, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15665, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15670, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15670, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15675, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15675, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -8290,23 +8151,19 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15661, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15661, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15666, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15666, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15671, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15671, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15676, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15676, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8321,24 +8178,22 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15662, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15662, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15667, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15667, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15672, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15672, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15677, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15677, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8357,7 +8212,7 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A6B90 */ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8367,23 +8222,22 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15638, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15638, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15643, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15643, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15648, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15648, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15653, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15653, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -8400,22 +8254,19 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15639, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15639, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15644, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15644, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15649, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15649, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15654, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15654, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -8430,22 +8281,19 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15640, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15640, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15645, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15645, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15650, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15650, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15655, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15655, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -8460,23 +8308,19 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15641, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15641, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15646, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15646, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15651, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15651, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15656, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15656, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8491,24 +8335,22 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15642, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15642, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15647, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15647, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15652, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15652, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15657, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15657, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8527,7 +8369,7 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A6BA0 */ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8537,7 +8379,7 @@ static void looping_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A6BB0 */ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8547,33 +8389,33 @@ static void looping_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A6A80 */ static void looping_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15602, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15602, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15603, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15603, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15610, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15610, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15604, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15604, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15605, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15605, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8590,33 +8432,33 @@ static void looping_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x008A6A90 */ static void looping_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15606, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15606, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15607, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15607, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15608, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15608, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15611, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15611, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15609, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15609, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8633,33 +8475,33 @@ static void looping_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x008A6AA0 */ static void looping_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15612, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15612, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15613, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15613, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15620, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15620, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15614, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15614, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15615, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15615, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8676,33 +8518,33 @@ static void looping_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A6AB0 */ static void looping_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15616, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15616, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15617, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15617, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15618, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15618, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15621, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15621, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15619, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15619, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8719,7 +8561,7 @@ static void looping_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A6AC0 */ static void looping_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_banked_25_deg_up_to_25_deg_up( @@ -8728,7 +8570,7 @@ static void looping_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x008A6AD0 */ static void looping_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_banked_25_deg_up_to_25_deg_up( @@ -8737,7 +8579,7 @@ static void looping_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x008A6AE0 */ static void looping_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_right_banked_25_deg_up( @@ -8746,7 +8588,7 @@ static void looping_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A6AF0 */ static void looping_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_25_deg_up_to_left_banked_25_deg_up( @@ -8755,31 +8597,31 @@ static void looping_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A6B00 */ static void looping_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15622, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15622, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15623, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15623, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15624, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15624, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15625, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15625, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8796,31 +8638,31 @@ static void looping_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x008A6B10 */ static void looping_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15626, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15626, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15627, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15627, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15628, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15628, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15629, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15629, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8837,31 +8679,31 @@ static void looping_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x008A6B40 */ static void looping_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15630, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15630, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15631, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15631, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15632, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15632, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15633, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15633, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8878,31 +8720,31 @@ static void looping_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x008A6B50 */ static void looping_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15634, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15634, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15635, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15635, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15636, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15636, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15637, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15637, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8919,7 +8761,7 @@ static void looping_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x008A6B60 */ static void looping_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -8928,7 +8770,7 @@ static void looping_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x008A6B70 */ static void looping_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -8937,7 +8779,7 @@ static void looping_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x008A6B20 */ static void looping_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -8946,7 +8788,7 @@ static void looping_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x008A6B30 */ static void looping_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -8955,33 +8797,33 @@ static void looping_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x008A69C0 */ static void looping_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15574, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15574, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15575, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15575, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15582, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15582, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15576, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15576, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15577, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15577, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -8998,33 +8840,33 @@ static void looping_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x008A69D0 */ static void looping_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15578, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15578, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15579, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15579, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15580, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15580, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15583, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15583, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15581, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15581, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9041,33 +8883,33 @@ static void looping_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x008A69E0 */ static void looping_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15584, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15584, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15585, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15585, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15592, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15592, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15586, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15586, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15587, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15587, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9084,33 +8926,33 @@ static void looping_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x008A69F0 */ static void looping_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15588, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15588, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15589, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15589, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15590, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15590, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15593, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15593, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15591, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15591, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -9127,7 +8969,7 @@ static void looping_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x008A6A00 */ static void looping_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -9135,7 +8977,7 @@ static void looping_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x008A6A10 */ static void looping_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -9143,7 +8985,7 @@ static void looping_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x008A6A20 */ static void looping_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -9151,14 +8993,14 @@ static void looping_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x008A6A30 */ static void looping_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { looping_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void looping_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -9166,19 +9008,19 @@ static void looping_rc_track_booster( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_LOOPING_RC_BOOSTER_NE_SW, 0, 0, 32, 20, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_LOOPING_RC_BOOSTER_NE_SW, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_LOOPING_RC_BOOSTER_NW_SE, 0, 0, 32, 20, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_LOOPING_RC_BOOSTER_NW_SE, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/MineRide.cpp b/src/openrct2/ride/coaster/MineRide.cpp index 5c4ec961ac..8532c8e4c9 100644 --- a/src/openrct2/ride/coaster/MineRide.cpp +++ b/src/openrct2/ride/coaster/MineRide.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008B08D0 */ static void mine_ride_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -28,21 +28,20 @@ static void mine_ride_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -53,7 +52,7 @@ static void mine_ride_track_flat( } static void mine_ride_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -64,11 +63,11 @@ static void mine_ride_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -77,45 +76,45 @@ static void mine_ride_track_station( /** rct2: 0x008B08E0 */ static void mine_ride_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19388, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19388, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19389, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19389, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19390, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19390, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19391, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19391, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -134,45 +133,43 @@ static void mine_ride_track_25_deg_up( /** rct2: 0x008B08F0 */ static void mine_ride_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19380, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19380, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19381, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19381, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19382, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19382, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19383, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19383, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -191,45 +188,45 @@ static void mine_ride_track_flat_to_25_deg_up( /** rct2: 0x008B0900 */ static void mine_ride_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19384, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19384, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19385, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19385, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19386, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19386, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19387, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19387, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -248,7 +245,7 @@ static void mine_ride_track_25_deg_up_to_flat( /** rct2: 0x008B0910 */ static void mine_ride_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -256,7 +253,7 @@ static void mine_ride_track_25_deg_down( /** rct2: 0x008B0920 */ static void mine_ride_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -264,7 +261,7 @@ static void mine_ride_track_flat_to_25_deg_down( /** rct2: 0x008B0930 */ static void mine_ride_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -272,7 +269,7 @@ static void mine_ride_track_25_deg_down_to_flat( /** rct2: 0x008B0940 */ static void mine_ride_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -282,27 +279,27 @@ static void mine_ride_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19427, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19427, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19432, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19432, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19437, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19437, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19422, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19422, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -321,21 +318,19 @@ static void mine_ride_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19426, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19426, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19431, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19431, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19436, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19436, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19421, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19421, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -350,22 +345,20 @@ static void mine_ride_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19425, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19425, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19430, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19430, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19435, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19435, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19420, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19420, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -380,21 +373,19 @@ static void mine_ride_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19424, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19424, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19429, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19429, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19434, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19434, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19419, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19419, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -409,27 +400,27 @@ static void mine_ride_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19423, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19423, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19428, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19428, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19433, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19433, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19418, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19418, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -450,7 +441,7 @@ static void mine_ride_track_left_quarter_turn_5( /** rct2: 0x008B0950 */ static void mine_ride_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -459,49 +450,47 @@ static void mine_ride_track_right_quarter_turn_5( /** rct2: 0x008B0960 */ static void mine_ride_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19340, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19340, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19348, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19348, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19341, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19341, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19349, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19349, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19342, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19342, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19343, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19343, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -513,49 +502,47 @@ static void mine_ride_track_flat_to_left_bank( /** rct2: 0x008B0970 */ static void mine_ride_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19344, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19344, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19345, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19345, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19346, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19346, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19350, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19350, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19347, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19347, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19351, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19351, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -567,49 +554,47 @@ static void mine_ride_track_flat_to_right_bank( /** rct2: 0x008B0980 */ static void mine_ride_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19346, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19346, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19350, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19350, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19347, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19347, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19351, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19351, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19344, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19344, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19345, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19345, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -621,49 +606,47 @@ static void mine_ride_track_left_bank_to_flat( /** rct2: 0x008B0990 */ static void mine_ride_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19342, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19342, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19343, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19343, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19340, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19340, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19348, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19348, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19341, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19341, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19349, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19349, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -675,7 +658,7 @@ static void mine_ride_track_right_bank_to_flat( /** rct2: 0x008B09A0 */ static void mine_ride_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -685,31 +668,29 @@ static void mine_ride_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19447, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19447, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19458, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19458, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19452, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19452, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19457, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19457, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19442, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19442, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -728,22 +709,20 @@ static void mine_ride_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19446, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19446, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19451, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19451, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19456, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19456, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19441, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19441, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -758,22 +737,20 @@ static void mine_ride_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19445, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19445, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19450, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19450, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19455, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19455, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19440, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19440, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -788,22 +765,20 @@ static void mine_ride_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19444, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19444, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19449, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19449, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19454, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19454, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19439, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19439, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -818,31 +793,29 @@ static void mine_ride_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19443, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19443, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19448, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19448, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19453, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19453, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19459, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19459, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19438, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19438, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -863,7 +836,7 @@ static void mine_ride_track_banked_left_quarter_turn_5( /** rct2: 0x008B09B0 */ static void mine_ride_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -872,49 +845,47 @@ static void mine_ride_track_banked_right_quarter_turn_5( /** rct2: 0x008B09C0 */ static void mine_ride_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19352, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19352, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19356, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19356, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19353, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19353, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19357, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19357, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19354, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19354, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19355, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19355, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -933,49 +904,47 @@ static void mine_ride_track_left_bank_to_25_deg_up( /** rct2: 0x008B09D0 */ static void mine_ride_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19358, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19358, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19359, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19359, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19360, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19360, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19362, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19362, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19361, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19361, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19363, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19363, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -994,49 +963,49 @@ static void mine_ride_track_right_bank_to_25_deg_up( /** rct2: 0x008B09E0 */ static void mine_ride_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19364, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19364, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19368, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19368, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19365, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19365, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19369, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19369, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19366, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19366, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19367, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19367, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1055,49 +1024,49 @@ static void mine_ride_track_25_deg_up_to_left_bank( /** rct2: 0x008B09F0 */ static void mine_ride_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19370, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19370, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19371, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19371, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19372, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19372, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19374, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19374, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19373, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19373, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19375, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19375, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1116,7 +1085,7 @@ static void mine_ride_track_25_deg_up_to_right_bank( /** rct2: 0x008B0A00 */ static void mine_ride_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1124,7 +1093,7 @@ static void mine_ride_track_left_bank_to_25_deg_down( /** rct2: 0x008B0A10 */ static void mine_ride_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1132,7 +1101,7 @@ static void mine_ride_track_right_bank_to_25_deg_down( /** rct2: 0x008B0A20 */ static void mine_ride_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1140,7 +1109,7 @@ static void mine_ride_track_25_deg_down_to_left_bank( /** rct2: 0x008B0A30 */ static void mine_ride_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1148,45 +1117,43 @@ static void mine_ride_track_25_deg_down_to_right_bank( /** rct2: 0x008B0A40 */ static void mine_ride_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19376, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19376, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19377, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19377, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19378, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19378, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19379, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19379, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1198,7 +1165,7 @@ static void mine_ride_track_left_bank( /** rct2: 0x008B0A50 */ static void mine_ride_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_ride_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1206,7 +1173,7 @@ static void mine_ride_track_right_bank( /** rct2: 0x008B0A60 */ static void mine_ride_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1216,27 +1183,27 @@ static void mine_ride_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19460, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19460, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19464, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19464, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19463, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19463, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19467, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19467, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1252,23 +1219,23 @@ static void mine_ride_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19461, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19461, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19465, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19465, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19462, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19462, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19466, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19466, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -1283,23 +1250,23 @@ static void mine_ride_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19462, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19462, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19466, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19466, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19461, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19461, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19465, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19465, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1314,27 +1281,27 @@ static void mine_ride_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19463, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19463, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19467, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19467, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19460, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19460, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19464, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19464, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1355,7 +1322,7 @@ static void mine_ride_track_s_bend_left( /** rct2: 0x008B0A70 */ static void mine_ride_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1365,27 +1332,27 @@ static void mine_ride_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19468, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19468, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19472, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19472, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19471, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19471, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19475, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19475, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1401,23 +1368,23 @@ static void mine_ride_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19469, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19469, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19473, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19473, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19470, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19470, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19474, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19474, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -1432,23 +1399,23 @@ static void mine_ride_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19470, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19470, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19474, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19474, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19469, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19469, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19473, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19473, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1463,27 +1430,27 @@ static void mine_ride_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19471, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19471, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19475, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19475, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19468, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19468, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19472, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19472, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1504,7 +1471,7 @@ static void mine_ride_track_s_bend_right( /** rct2: 0x008B0AB0 */ static void mine_ride_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1514,27 +1481,27 @@ static void mine_ride_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19397, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19397, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19400, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19400, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19403, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19403, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19394, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19394, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1553,21 +1520,19 @@ static void mine_ride_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19396, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19396, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19399, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19399, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19402, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19402, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19393, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19393, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -1580,27 +1545,27 @@ static void mine_ride_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19395, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19395, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19398, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19398, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19401, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19401, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19392, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19392, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1621,7 +1586,7 @@ static void mine_ride_track_left_quarter_turn_3( /** rct2: 0x008B0AC0 */ static void mine_ride_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1630,7 +1595,7 @@ static void mine_ride_track_right_quarter_turn_3( /** rct2: 0x008B0AD0 */ static void mine_ride_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1640,31 +1605,29 @@ static void mine_ride_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19409, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19409, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19416, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19416, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19412, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19412, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19415, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19415, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19406, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19406, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1683,22 +1646,20 @@ static void mine_ride_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19408, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19408, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19411, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19411, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19414, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19414, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19405, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19405, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -1711,31 +1672,29 @@ static void mine_ride_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19407, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19407, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19410, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19410, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19413, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19413, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19417, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19417, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19404, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19404, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1756,7 +1715,7 @@ static void mine_ride_track_left_quarter_turn_3_bank( /** rct2: 0x008B0AE0 */ static void mine_ride_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1765,7 +1724,7 @@ static void mine_ride_track_right_quarter_turn_3_bank( /** rct2: 0x008B0AF0 */ static void mine_ride_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1775,31 +1734,29 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19495, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19495, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19502, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19502, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19498, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19498, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19501, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19501, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19492, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19492, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1819,22 +1776,20 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19494, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19494, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19497, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19497, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19500, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19500, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19491, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19491, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -1847,31 +1802,29 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19493, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19493, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19496, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19496, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19499, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19499, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19503, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19503, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19490, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19490, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1893,31 +1846,29 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19492, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19492, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19495, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19495, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19502, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19502, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19498, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19498, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19501, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19501, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1942,23 +1893,21 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19491, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19491, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19494, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19494, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19497, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19497, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19500, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19500, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1970,31 +1919,29 @@ static void mine_ride_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19490, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19490, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19493, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19493, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19496, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19496, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19499, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19499, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19503, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19503, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2011,7 +1958,7 @@ static void mine_ride_track_left_half_banked_helix_up_small( /** rct2: 0x008B0B00 */ static void mine_ride_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2021,31 +1968,29 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19476, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19476, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19479, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19479, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19482, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19482, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19485, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19485, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19489, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19489, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2065,23 +2010,21 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19477, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19480, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19480, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19486, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19486, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2093,31 +2036,29 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19478, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19478, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19481, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19481, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19488, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19488, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19484, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19484, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19487, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19487, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2139,31 +2080,29 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19479, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19479, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19482, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19482, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19485, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19485, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19489, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19489, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19476, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19476, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2188,22 +2127,20 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19480, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19480, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19483, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19483, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19486, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19486, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19477, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19477, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2216,31 +2153,29 @@ static void mine_ride_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19481, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19481, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19488, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19488, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19484, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19484, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19487, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19487, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19478, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19478, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2257,7 +2192,7 @@ static void mine_ride_track_right_half_banked_helix_up_small( /** rct2: 0x008B0B10 */ static void mine_ride_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2271,7 +2206,7 @@ static void mine_ride_track_left_half_banked_helix_down_small( /** rct2: 0x008B0B20 */ static void mine_ride_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -2285,7 +2220,7 @@ static void mine_ride_track_right_half_banked_helix_down_small( /** rct2: 0x008B0B30 */ static void mine_ride_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2295,31 +2230,29 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19535, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19535, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19546, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19546, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19540, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19540, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19545, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19545, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19530, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19530, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2339,22 +2272,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19534, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19534, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19539, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19539, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19544, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19544, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19529, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19529, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -2369,22 +2300,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19533, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19533, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19538, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19538, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19543, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19543, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19528, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19528, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -2399,22 +2328,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19532, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19532, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19537, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19537, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19542, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19542, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19527, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19527, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2429,31 +2356,29 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19531, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19531, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19536, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19536, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19541, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19541, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19547, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19547, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19526, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19526, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2475,31 +2400,29 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19530, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19530, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19535, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19535, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19546, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19546, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19540, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19540, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19545, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19545, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2524,22 +2447,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19529, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19529, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19534, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19534, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19539, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19539, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19544, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19544, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2554,22 +2475,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19528, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19528, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19533, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19533, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19538, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19538, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19543, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19543, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -2584,22 +2503,20 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19527, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19527, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19532, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19532, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19537, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19537, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19542, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19542, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -2614,31 +2531,29 @@ static void mine_ride_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19526, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19526, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19531, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19531, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19536, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19536, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19541, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19541, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19547, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19547, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2655,7 +2570,7 @@ static void mine_ride_track_left_half_banked_helix_up_large( /** rct2: 0x008B0B40 */ static void mine_ride_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2665,31 +2580,29 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19504, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19504, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19509, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19509, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19514, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19514, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19519, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19519, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19525, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19525, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2709,22 +2622,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19505, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19505, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19510, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19510, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19515, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19515, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19520, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19520, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -2739,22 +2650,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19506, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19506, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19511, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19511, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19516, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19516, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19521, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19521, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -2769,22 +2678,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19507, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19507, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19512, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19512, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19517, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19517, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19522, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19522, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2799,31 +2706,29 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19508, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19508, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19513, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19513, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19524, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19524, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19518, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19518, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19523, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19523, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2845,31 +2750,29 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19509, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19509, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19514, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19514, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19519, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19519, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19525, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19525, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19504, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19504, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2894,22 +2797,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19510, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19510, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19515, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19515, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19520, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19520, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19505, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19505, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2924,22 +2825,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19511, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19511, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19516, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19516, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19521, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19521, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19506, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19506, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -2954,22 +2853,20 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19512, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19512, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19517, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19517, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19522, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19522, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19507, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19507, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -2984,31 +2881,29 @@ static void mine_ride_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19513, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19513, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19524, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19524, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19518, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19518, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19523, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19523, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19508, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19508, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3025,7 +2920,7 @@ static void mine_ride_track_right_half_banked_helix_up_large( /** rct2: 0x008B0B50 */ static void mine_ride_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3039,7 +2934,7 @@ static void mine_ride_track_left_half_banked_helix_down_large( /** rct2: 0x008B0B60 */ static void mine_ride_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3053,42 +2948,38 @@ static void mine_ride_track_right_half_banked_helix_down_large( /** rct2: 0x008B0B70 */ static void mine_ride_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 19338, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 19339, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -3099,7 +2990,7 @@ static void mine_ride_track_on_ride_photo( /** rct2: 0x008B0B90 */ static void mine_ride_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3109,27 +3000,27 @@ static void mine_ride_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19564, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19564, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19568, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19568, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19572, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19572, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19576, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19576, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3145,21 +3036,19 @@ static void mine_ride_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19565, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19565, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19569, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19569, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19573, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19573, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19577, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19577, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3174,22 +3063,20 @@ static void mine_ride_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19566, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19566, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19570, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19570, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19574, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19574, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19578, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19578, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3207,30 +3094,28 @@ static void mine_ride_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19567, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19567, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19571, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19571, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19575, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19575, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19579, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19579, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3245,7 +3130,7 @@ static void mine_ride_track_left_eighth_to_diag( /** rct2: 0x008B0BA0 */ static void mine_ride_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3255,27 +3140,27 @@ static void mine_ride_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19548, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19548, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19552, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19552, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19556, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19556, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19560, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19560, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3291,21 +3176,19 @@ static void mine_ride_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19549, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19549, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19553, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19553, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19557, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19557, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19561, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19561, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3320,21 +3203,19 @@ static void mine_ride_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19550, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19550, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19554, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19554, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19558, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19558, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19562, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19562, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3352,30 +3233,28 @@ static void mine_ride_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19551, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19551, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19555, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19555, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19559, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19559, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19563, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19563, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3390,7 +3269,7 @@ static void mine_ride_track_right_eighth_to_diag( /** rct2: 0x008B0BB0 */ static void mine_ride_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -3399,7 +3278,7 @@ static void mine_ride_track_left_eighth_to_orthogonal( /** rct2: 0x008B0BC0 */ static void mine_ride_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -3408,7 +3287,7 @@ static void mine_ride_track_right_eighth_to_orthogonal( /** rct2: 0x008B0BD0 */ static void mine_ride_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3418,29 +3297,27 @@ static void mine_ride_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19596, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19596, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19600, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19600, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19604, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19604, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19608, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19608, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3456,22 +3333,20 @@ static void mine_ride_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19597, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19597, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19601, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19601, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19605, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19605, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19609, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19609, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3486,22 +3361,20 @@ static void mine_ride_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19598, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19598, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19602, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19602, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19606, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19606, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19610, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19610, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3519,30 +3392,29 @@ static void mine_ride_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19599, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19599, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19603, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19603, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19607, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19607, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19611, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19611, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3557,7 +3429,7 @@ static void mine_ride_track_left_eighth_bank_to_diag( /** rct2: 0x008B0BE0 */ static void mine_ride_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3567,29 +3439,27 @@ static void mine_ride_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19580, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19580, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19584, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19584, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19588, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19588, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19592, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19592, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3605,22 +3475,20 @@ static void mine_ride_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19581, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19581, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19585, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19585, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19589, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19589, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19593, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19593, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3635,22 +3503,20 @@ static void mine_ride_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19582, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19582, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19586, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19586, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19590, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19590, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19594, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19594, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3668,30 +3534,29 @@ static void mine_ride_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19583, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19583, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19587, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19587, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19591, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19591, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19595, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19595, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3706,7 +3571,7 @@ static void mine_ride_track_right_eighth_bank_to_diag( /** rct2: 0x008B0BF0 */ static void mine_ride_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -3715,7 +3580,7 @@ static void mine_ride_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008B0C00 */ static void mine_ride_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -3724,7 +3589,7 @@ static void mine_ride_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008B0B80 */ static void mine_ride_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3734,7 +3599,7 @@ static void mine_ride_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19615, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19615, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3747,7 +3612,7 @@ static void mine_ride_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19612, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19612, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3760,7 +3625,7 @@ static void mine_ride_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19614, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19614, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3773,22 +3638,22 @@ static void mine_ride_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19613, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19613, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3800,7 +3665,7 @@ static void mine_ride_track_diag_flat( /** rct2: 0x008B0C30 */ static void mine_ride_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3810,7 +3675,7 @@ static void mine_ride_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19627, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19627, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3823,7 +3688,7 @@ static void mine_ride_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19624, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19624, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3836,7 +3701,7 @@ static void mine_ride_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19626, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19626, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3849,22 +3714,22 @@ static void mine_ride_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19625, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19625, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3876,7 +3741,7 @@ static void mine_ride_track_diag_25_deg_up( /** rct2: 0x008B0C10 */ static void mine_ride_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3886,7 +3751,7 @@ static void mine_ride_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19619, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19619, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3899,7 +3764,7 @@ static void mine_ride_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19616, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19616, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3912,7 +3777,7 @@ static void mine_ride_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19618, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19618, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3925,22 +3790,22 @@ static void mine_ride_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19617, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19617, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3952,7 +3817,7 @@ static void mine_ride_track_diag_flat_to_25_deg_up( /** rct2: 0x008B0C20 */ static void mine_ride_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3962,7 +3827,7 @@ static void mine_ride_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19623, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19623, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3975,7 +3840,7 @@ static void mine_ride_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19620, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19620, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3988,7 +3853,7 @@ static void mine_ride_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19622, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19622, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4001,22 +3866,22 @@ static void mine_ride_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19621, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19621, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4028,7 +3893,7 @@ static void mine_ride_track_diag_25_deg_up_to_flat( /** rct2: 0x008B0C60 */ static void mine_ride_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4038,7 +3903,7 @@ static void mine_ride_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19625, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19625, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4051,7 +3916,7 @@ static void mine_ride_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19626, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19626, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4064,7 +3929,7 @@ static void mine_ride_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19624, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19624, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4077,22 +3942,22 @@ static void mine_ride_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19627, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19627, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4104,7 +3969,7 @@ static void mine_ride_track_diag_25_deg_down( /** rct2: 0x008B0C40 */ static void mine_ride_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4114,7 +3979,7 @@ static void mine_ride_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19621, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19621, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4126,7 +3991,7 @@ static void mine_ride_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19622, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19622, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4138,7 +4003,7 @@ static void mine_ride_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19620, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19620, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4150,22 +4015,22 @@ static void mine_ride_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19623, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19623, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4178,7 +4043,7 @@ static void mine_ride_track_diag_flat_to_25_deg_down( /** rct2: 0x008B0C50 */ static void mine_ride_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4188,7 +4053,7 @@ static void mine_ride_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19617, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19617, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4201,7 +4066,7 @@ static void mine_ride_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19618, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19618, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4214,7 +4079,7 @@ static void mine_ride_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19616, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19616, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4227,22 +4092,22 @@ static void mine_ride_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19619, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19619, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4254,7 +4119,7 @@ static void mine_ride_track_diag_25_deg_down_to_flat( /** rct2: 0x008B0C90 */ static void mine_ride_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4264,7 +4129,7 @@ static void mine_ride_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19635, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19635, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4277,10 +4142,10 @@ static void mine_ride_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19632, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19632, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19636, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19636, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4293,7 +4158,7 @@ static void mine_ride_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19634, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19634, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4306,22 +4171,22 @@ static void mine_ride_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19633, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19633, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4333,7 +4198,7 @@ static void mine_ride_track_diag_flat_to_left_bank( /** rct2: 0x008B0CA0 */ static void mine_ride_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4343,7 +4208,7 @@ static void mine_ride_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19640, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19640, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4356,7 +4221,7 @@ static void mine_ride_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19637, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19637, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4369,10 +4234,10 @@ static void mine_ride_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19639, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19639, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19641, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19641, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4385,22 +4250,22 @@ static void mine_ride_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19638, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19638, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4412,7 +4277,7 @@ static void mine_ride_track_diag_flat_to_right_bank( /** rct2: 0x008B0CB0 */ static void mine_ride_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4422,7 +4287,7 @@ static void mine_ride_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19638, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19638, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4435,10 +4300,10 @@ static void mine_ride_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19639, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19639, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19641, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19641, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4451,7 +4316,7 @@ static void mine_ride_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19637, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19637, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4464,22 +4329,22 @@ static void mine_ride_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19640, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19640, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4491,7 +4356,7 @@ static void mine_ride_track_diag_left_bank_to_flat( /** rct2: 0x008B0CC0 */ static void mine_ride_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4501,7 +4366,7 @@ static void mine_ride_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19633, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19633, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4514,7 +4379,7 @@ static void mine_ride_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19634, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19634, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4527,10 +4392,10 @@ static void mine_ride_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19632, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19632, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19636, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19636, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4543,22 +4408,22 @@ static void mine_ride_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19635, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19635, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4570,7 +4435,7 @@ static void mine_ride_track_diag_right_bank_to_flat( /** rct2: 0x008B0CF0 */ static void mine_ride_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4580,7 +4445,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19655, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19655, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4593,10 +4458,10 @@ static void mine_ride_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19652, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19652, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19656, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19656, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4609,7 +4474,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19654, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4622,22 +4487,22 @@ static void mine_ride_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19653, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19653, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4649,7 +4514,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008B0D00 */ static void mine_ride_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4659,7 +4524,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19660, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19660, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4672,7 +4537,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19657, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19657, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4685,10 +4550,10 @@ static void mine_ride_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19659, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19659, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19661, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19661, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4701,22 +4566,22 @@ static void mine_ride_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19658, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19658, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4728,7 +4593,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008B0CD0 */ static void mine_ride_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4738,7 +4603,7 @@ static void mine_ride_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19645, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19645, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4751,10 +4616,10 @@ static void mine_ride_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19642, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19642, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19646, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19646, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4767,7 +4632,7 @@ static void mine_ride_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19644, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4780,22 +4645,22 @@ static void mine_ride_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19643, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19643, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4807,7 +4672,7 @@ static void mine_ride_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008B0CE0 */ static void mine_ride_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4817,7 +4682,7 @@ static void mine_ride_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19650, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19650, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4830,7 +4695,7 @@ static void mine_ride_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19647, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19647, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4843,10 +4708,10 @@ static void mine_ride_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19649, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19649, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19651, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19651, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4859,22 +4724,22 @@ static void mine_ride_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19648, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19648, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4886,7 +4751,7 @@ static void mine_ride_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008B0D10 */ static void mine_ride_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4896,7 +4761,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19648, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19648, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4908,10 +4773,10 @@ static void mine_ride_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19649, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19649, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19651, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19651, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4923,7 +4788,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19647, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19647, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4935,22 +4800,22 @@ static void mine_ride_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19650, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19650, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4963,7 +4828,7 @@ static void mine_ride_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008B0D20 */ static void mine_ride_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4973,7 +4838,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19643, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19643, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4985,7 +4850,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19644, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19644, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4997,10 +4862,10 @@ static void mine_ride_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19642, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19642, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19646, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19646, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -5012,22 +4877,22 @@ static void mine_ride_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19645, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19645, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5040,7 +4905,7 @@ static void mine_ride_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008B0D30 */ static void mine_ride_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5050,7 +4915,7 @@ static void mine_ride_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19658, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19658, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5063,10 +4928,10 @@ static void mine_ride_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19659, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19659, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19661, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19661, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -5079,7 +4944,7 @@ static void mine_ride_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19657, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19657, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5092,22 +4957,22 @@ static void mine_ride_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19660, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19660, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5119,7 +4984,7 @@ static void mine_ride_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008B0D40 */ static void mine_ride_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5129,7 +4994,7 @@ static void mine_ride_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19653, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19653, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5142,7 +5007,7 @@ static void mine_ride_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19654, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19654, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5155,10 +5020,10 @@ static void mine_ride_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19652, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19652, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19656, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19656, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -5171,22 +5036,22 @@ static void mine_ride_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19655, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19655, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5198,7 +5063,7 @@ static void mine_ride_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008B0C70 */ static void mine_ride_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5208,7 +5073,7 @@ static void mine_ride_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19631, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19631, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5221,7 +5086,7 @@ static void mine_ride_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19628, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19628, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -5234,7 +5099,7 @@ static void mine_ride_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19630, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19630, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5247,22 +5112,22 @@ static void mine_ride_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19629, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19629, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5274,7 +5139,7 @@ static void mine_ride_track_diag_left_bank( /** rct2: 0x008B0C80 */ static void mine_ride_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5284,7 +5149,7 @@ static void mine_ride_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19629, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19629, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5297,7 +5162,7 @@ static void mine_ride_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19630, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19630, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5310,7 +5175,7 @@ static void mine_ride_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19628, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19628, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -5323,22 +5188,22 @@ static void mine_ride_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19631, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19631, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/MineTrainCoaster.cpp b/src/openrct2/ride/coaster/MineTrainCoaster.cpp index 5c15a7b3d3..901b88765c 100644 --- a/src/openrct2/ride/coaster/MineTrainCoaster.cpp +++ b/src/openrct2/ride/coaster/MineTrainCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _MineTrainBlockBrakeImages[NumOrthogonalDirectio /** rct2: 0x0071BFA4 */ static void mine_train_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -41,23 +41,23 @@ static void mine_train_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20054, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20054, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20055, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20055, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20056, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20056, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20057, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20057, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -68,14 +68,14 @@ static void mine_train_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -86,7 +86,7 @@ static void mine_train_rc_track_flat( /** rct2: 0x0071C154, 0x0071C164, 0x0071C174 */ static void mine_train_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -97,22 +97,22 @@ static void mine_train_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, height); if (trackElement.GetTrackType() == TrackElemType::EndStation) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsChildRotated( - session, direction, _MineTrainBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, + session, direction, _MineTrainBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 0, height); } else { PaintAddImageAsChildRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 0, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 0, height); } - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 3); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -121,7 +121,7 @@ static void mine_train_rc_track_station( /** rct2: 0x0071BFB4 */ static void mine_train_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -130,23 +130,23 @@ static void mine_train_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20102, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20102, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20103, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20103, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20104, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20104, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20105, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20105, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -156,23 +156,23 @@ static void mine_train_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20074, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20074, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20075, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20075, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20076, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20076, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20077, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20077, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -190,30 +190,30 @@ static void mine_train_rc_track_25_deg_up( /** rct2: 0x0071BFC4 */ static void mine_train_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20090, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20090, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20091, 0, 0, 1, 32, 98, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 7, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20091, 0, 0, 1, 32, 98, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20092, 0, 0, 1, 32, 98, height, 27, 0, height); - wooden_a_supports_paint_setup(session, 6, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20092, 0, 0, 1, 32, 98, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20093, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20093, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -230,7 +230,7 @@ static void mine_train_rc_track_60_deg_up( /** rct2: 0x0071BFD4 */ static void mine_train_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -239,23 +239,23 @@ static void mine_train_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20094, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20094, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20095, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20095, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20096, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20096, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20097, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20097, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -265,23 +265,23 @@ static void mine_train_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20066, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20066, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20067, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20067, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20068, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20068, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20069, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20069, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -299,34 +299,34 @@ static void mine_train_rc_track_flat_to_25_deg_up( /** rct2: 0x0071BFE4 */ static void mine_train_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20078, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20078, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20079, 0, 0, 32, 20, 1, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20079, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20082, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20082, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20080, 0, 0, 32, 20, 1, height, 0, 6, height); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20080, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20083, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20083, 0, 0, 32, 1, 66, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20081, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20081, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -343,34 +343,34 @@ static void mine_train_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x0071BFF4 */ static void mine_train_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20084, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20084, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20085, 0, 0, 24, 1, 61, height, 4, 29, height - 16); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20085, 0, 0, 24, 1, 61, height, 4, 29, height - 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20088, 0, 0, 32, 2, 66, height, 0, 4, height); - wooden_a_supports_paint_setup(session, 7, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20088, 0, 0, 32, 2, 66, height, 0, 4, height); + wooden_a_supports_paint_setup(session, 7, 18, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20086, 0, 0, 24, 1, 61, height, 4, 29, height - 16); + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session, direction, session.TrackColours[SCHEME_TRACK] | 20086, 0, 0, 24, 1, 61, height, 4, 29, height - 16); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20089, 0, 0, 32, 2, 66, height, 0, 4, height); - wooden_a_supports_paint_setup(session, 6, 19, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20089, 0, 0, 32, 2, 66, height, 0, 4, height); + wooden_a_supports_paint_setup(session, 6, 19, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20087, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20087, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -387,7 +387,7 @@ static void mine_train_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x0071C004 */ static void mine_train_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -396,23 +396,23 @@ static void mine_train_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20098, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20098, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20099, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20099, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20100, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20100, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20101, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20101, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -422,23 +422,23 @@ static void mine_train_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20070, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20070, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20071, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20071, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20072, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20072, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20073, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20073, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -456,7 +456,7 @@ static void mine_train_rc_track_25_deg_up_to_flat( /** rct2: 0x0071C014 */ static void mine_train_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -464,7 +464,7 @@ static void mine_train_rc_track_25_deg_down( /** rct2: 0x0071C024 */ static void mine_train_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -472,7 +472,7 @@ static void mine_train_rc_track_60_deg_down( /** rct2: 0x0071C034 */ static void mine_train_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -480,7 +480,7 @@ static void mine_train_rc_track_flat_to_25_deg_down( /** rct2: 0x0071C044 */ static void mine_train_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -488,7 +488,7 @@ static void mine_train_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x0071C054 */ static void mine_train_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -496,7 +496,7 @@ static void mine_train_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x0071C064 */ static void mine_train_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -504,7 +504,7 @@ static void mine_train_rc_track_25_deg_down_to_flat( /** rct2: 0x0071C0B4 */ static void mine_train_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -514,23 +514,23 @@ static void mine_train_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20155, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20155, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20160, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20160, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20165, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20165, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20150, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20150, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -550,25 +550,23 @@ static void mine_train_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20154, 0, 0, 32, 16, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20154, 0, 0, 32, 16, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20159, 0, 0, 32, 16, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20159, 0, 0, 32, 16, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20164, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20164, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20149, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20149, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -583,26 +581,24 @@ static void mine_train_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20153, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20153, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20158, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20158, 0, 0, 16, 16, 1, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20163, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20163, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20148, 0, 0, 16, 16, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20148, 0, 0, 16, 16, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -623,25 +619,23 @@ static void mine_train_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20152, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20152, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20157, 0, 0, 16, 32, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20157, 0, 0, 16, 32, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20162, 0, 0, 16, 32, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20162, 0, 0, 16, 32, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20147, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20147, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -656,23 +650,23 @@ static void mine_train_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20151, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20151, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20156, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20156, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20161, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20161, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20146, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20146, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -692,7 +686,7 @@ static void mine_train_rc_track_left_quarter_turn_5( /** rct2: 0x0071C0C4 */ static void mine_train_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -701,34 +695,34 @@ static void mine_train_rc_track_right_quarter_turn_5( /** rct2: 0x0071C074 */ static void mine_train_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20106, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20106, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20114, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20114, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20107, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20107, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20115, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20115, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20108, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20108, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20109, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20109, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -738,34 +732,34 @@ static void mine_train_rc_track_flat_to_left_bank( /** rct2: 0x0071C084 */ static void mine_train_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20110, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20110, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20111, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20111, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20112, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20112, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20116, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20116, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20113, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20113, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20117, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20117, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -775,34 +769,34 @@ static void mine_train_rc_track_flat_to_right_bank( /** rct2: 0x0071C094 */ static void mine_train_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20112, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20112, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20116, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20116, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20113, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20113, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20117, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20117, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20110, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20110, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20111, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20111, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -812,34 +806,34 @@ static void mine_train_rc_track_left_bank_to_flat( /** rct2: 0x0071C0A4 */ static void mine_train_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20108, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20108, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20109, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20109, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20106, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20106, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20114, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20114, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20107, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20107, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20115, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20115, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -849,7 +843,7 @@ static void mine_train_rc_track_right_bank_to_flat( /** rct2: 0x0071C0D4 */ static void mine_train_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -859,27 +853,25 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20175, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20175, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20186, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20186, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20180, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20180, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20185, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20185, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20170, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20170, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -899,26 +891,24 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20174, 0, 0, 32, 16, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20174, 0, 0, 32, 16, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20179, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20179, 0, 0, 32, 16, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20184, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20184, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20169, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20169, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -933,26 +923,24 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20173, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20173, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20183, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20183, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20168, 0, 0, 16, 16, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20168, 0, 0, 16, 16, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -973,26 +961,24 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20172, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20172, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20177, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20177, 0, 0, 16, 32, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20182, 0, 0, 16, 32, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20182, 0, 0, 16, 32, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20167, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20167, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1007,27 +993,25 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20171, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20171, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20176, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20176, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20181, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20181, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20187, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20187, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20166, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20166, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1047,7 +1031,7 @@ static void mine_train_rc_track_banked_left_quarter_turn_5( /** rct2: 0x0071C0E4 */ static void mine_train_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1056,34 +1040,34 @@ static void mine_train_rc_track_banked_right_quarter_turn_5( /** rct2: 0x0071C204 */ static void mine_train_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20118, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20118, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20122, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20122, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20119, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20119, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20123, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20123, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20120, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20120, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20121, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20121, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1100,34 +1084,34 @@ static void mine_train_rc_track_left_bank_to_25_deg_up( /** rct2: 0x0071C214 */ static void mine_train_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20124, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20124, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20125, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20125, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20126, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20126, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20128, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20128, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20127, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20127, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20129, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20129, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1144,34 +1128,34 @@ static void mine_train_rc_track_right_bank_to_25_deg_up( /** rct2: 0x0071C224 */ static void mine_train_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20130, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20130, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20134, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20134, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20131, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20131, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20135, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20135, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20132, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20132, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20133, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20133, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1188,34 +1172,34 @@ static void mine_train_rc_track_25_deg_up_to_left_bank( /** rct2: 0x0071C234 */ static void mine_train_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20136, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20136, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20137, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20137, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20138, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20138, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20140, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20140, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20139, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20139, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20141, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20141, 0, 0, 32, 1, 34, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1232,7 +1216,7 @@ static void mine_train_rc_track_25_deg_up_to_right_bank( /** rct2: 0x0071C244 */ static void mine_train_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1240,7 +1224,7 @@ static void mine_train_rc_track_left_bank_to_25_deg_down( /** rct2: 0x0071C254 */ static void mine_train_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1248,7 +1232,7 @@ static void mine_train_rc_track_right_bank_to_25_deg_down( /** rct2: 0x0071C264 */ static void mine_train_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1256,7 +1240,7 @@ static void mine_train_rc_track_25_deg_down_to_left_bank( /** rct2: 0x0071C274 */ static void mine_train_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1264,30 +1248,30 @@ static void mine_train_rc_track_25_deg_down_to_right_bank( /** rct2: 0x0071C304 */ static void mine_train_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20142, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20142, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20143, 0, 0, 32, 1, 26, height, 0, 27, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20143, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20144, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20144, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20145, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20145, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1297,7 +1281,7 @@ static void mine_train_rc_track_left_bank( /** rct2: 0x0071C314 */ static void mine_train_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mine_train_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1305,7 +1289,7 @@ static void mine_train_rc_track_right_bank( /** rct2: 0x0071C0F4 */ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1315,23 +1299,23 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20250, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20250, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20255, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20255, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20260, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20260, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20265, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20265, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1351,25 +1335,23 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20251, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20251, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20256, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20256, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20261, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20261, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20266, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20266, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1384,26 +1366,24 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20252, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20252, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20257, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20257, 0, 0, 16, 16, 1, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20262, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20262, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20267, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20267, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1424,25 +1404,23 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20253, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20253, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20258, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20258, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20263, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20263, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20268, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20268, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1457,23 +1435,23 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20254, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20254, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20259, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20259, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20264, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20264, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20269, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20269, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1493,7 +1471,7 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x0071C104 */ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1503,23 +1481,23 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20230, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20230, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20235, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20235, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20240, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20240, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20245, 0, 0, 32, 27, 1, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20245, 0, 0, 32, 27, 1, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1539,25 +1517,23 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20231, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20231, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20236, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20236, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20241, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20241, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20246, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20246, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1572,26 +1548,24 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20232, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20232, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20237, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20237, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20242, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20242, 0, 0, 16, 16, 1, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20247, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20247, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1612,25 +1586,23 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20233, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20233, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20238, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20238, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20243, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20243, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20248, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20248, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1645,23 +1617,23 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20234, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 7, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20234, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 7, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20239, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 6, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20239, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 6, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20244, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 7, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20244, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 7, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20249, 0, 0, 27, 32, 1, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 6, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20249, 0, 0, 27, 32, 1, height, 2, 0, height); + wooden_a_supports_paint_setup(session, 6, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1681,7 +1653,7 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x0071C114 */ static void mine_train_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1690,7 +1662,7 @@ static void mine_train_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x0071C124 */ static void mine_train_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1699,7 +1671,7 @@ static void mine_train_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x0071C134 */ static void mine_train_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1709,23 +1681,23 @@ static void mine_train_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20270, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20270, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20274, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20274, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20273, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20273, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20277, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20277, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1740,23 +1712,23 @@ static void mine_train_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20271, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20271, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20275, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20275, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20272, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20272, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20276, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20276, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1771,23 +1743,23 @@ static void mine_train_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20272, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20272, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20276, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20276, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20271, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20271, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20275, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20275, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1802,23 +1774,23 @@ static void mine_train_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20273, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20273, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20277, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20277, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20270, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20270, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20274, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20274, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1838,7 +1810,7 @@ static void mine_train_rc_track_s_bend_left( /** rct2: 0x0071C144 */ static void mine_train_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1848,23 +1820,23 @@ static void mine_train_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20278, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20278, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20282, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20282, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20281, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20281, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20285, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20285, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1879,23 +1851,23 @@ static void mine_train_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20279, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20279, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20283, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20283, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20280, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20280, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20284, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20284, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1910,23 +1882,23 @@ static void mine_train_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20280, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20280, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20284, 0, 0, 32, 26, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20284, 0, 0, 32, 26, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20279, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20279, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20283, 0, 0, 32, 26, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20283, 0, 0, 32, 26, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1941,23 +1913,23 @@ static void mine_train_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20281, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20281, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20285, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20285, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20278, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20278, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20282, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20282, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1977,7 +1949,7 @@ static void mine_train_rc_track_s_bend_right( /** rct2: 0x0071C184 */ static void mine_train_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1987,23 +1959,23 @@ static void mine_train_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20193, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20193, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20196, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20196, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20199, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20199, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20190, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20190, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2017,16 +1989,16 @@ static void mine_train_rc_track_left_quarter_turn_3( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2036,21 +2008,19 @@ static void mine_train_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20192, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20192, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20195, 0, 0, 16, 16, 1, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20195, 0, 0, 16, 16, 1, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20198, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20198, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20189, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20189, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -2063,23 +2033,23 @@ static void mine_train_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20191, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20191, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20194, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20194, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20197, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20197, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20188, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20188, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2099,7 +2069,7 @@ static void mine_train_rc_track_left_quarter_turn_3( /** rct2: 0x0071C194 */ static void mine_train_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2108,7 +2078,7 @@ static void mine_train_rc_track_right_quarter_turn_3( /** rct2: 0x0071C1A4 */ static void mine_train_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2118,27 +2088,25 @@ static void mine_train_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20205, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20205, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20212, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20212, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20208, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20208, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20211, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20211, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20202, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20202, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2152,16 +2120,16 @@ static void mine_train_rc_track_left_quarter_turn_3_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2171,22 +2139,20 @@ static void mine_train_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20204, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20204, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20207, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20207, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20210, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20210, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20201, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20201, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -2199,27 +2165,25 @@ static void mine_train_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20203, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20203, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20206, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20206, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20209, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20209, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20213, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20213, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20200, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20200, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2239,7 +2203,7 @@ static void mine_train_rc_track_left_quarter_turn_3_bank( /** rct2: 0x0071C1B4 */ static void mine_train_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2248,7 +2212,7 @@ static void mine_train_rc_track_right_quarter_turn_3_bank( /** rct2: 0x0071C1C4 */ static void mine_train_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2258,23 +2222,23 @@ static void mine_train_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20225, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20225, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20227, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20227, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20229, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20229, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20223, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20223, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2288,16 +2252,16 @@ static void mine_train_rc_track_left_quarter_turn_3_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 56, 0x20); @@ -2312,23 +2276,23 @@ static void mine_train_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20224, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20224, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20226, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20226, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20228, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20228, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20222, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20222, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2348,7 +2312,7 @@ static void mine_train_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x0071C1D4 */ static void mine_train_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2358,23 +2322,23 @@ static void mine_train_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20214, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20214, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20216, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20216, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20218, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20218, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20220, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20220, 0, 6, 32, 20, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2388,16 +2352,16 @@ static void mine_train_rc_track_right_quarter_turn_3_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 56, 0x20); @@ -2412,23 +2376,23 @@ static void mine_train_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20215, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20215, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20217, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20217, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20219, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20219, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20221, 6, 0, 20, 32, 1, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20221, 6, 0, 20, 32, 1, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2448,7 +2412,7 @@ static void mine_train_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x0071C1E4 */ static void mine_train_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2457,7 +2421,7 @@ static void mine_train_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x0071C1F4 */ static void mine_train_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2466,7 +2430,7 @@ static void mine_train_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x0071C284 */ static void mine_train_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2476,27 +2440,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20305, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20305, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20312, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20312, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20308, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20308, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20311, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20311, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20302, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20302, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2514,16 +2476,16 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2533,22 +2495,20 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20304, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20304, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20307, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20307, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20310, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20310, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20301, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20301, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -2561,27 +2521,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20303, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20303, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20306, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20306, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20309, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20309, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20313, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20313, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20300, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20300, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2605,27 +2563,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20302, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20302, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20305, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20305, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20312, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20312, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20308, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20308, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20311, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20311, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2648,16 +2604,16 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2667,23 +2623,21 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20301, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20301, 0, 0, 16, 16, 1, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20304, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20304, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20307, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20307, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20310, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20310, 0, 0, 16, 16, 1, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2695,27 +2649,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20300, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20300, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20303, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20303, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20306, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20306, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20309, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20309, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20313, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20313, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2734,7 +2686,7 @@ static void mine_train_rc_track_left_half_banked_helix_up_small( /** rct2: 0x0071C294 */ static void mine_train_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2744,27 +2696,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20286, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20286, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20289, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20289, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20292, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20292, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20295, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20295, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20299, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20299, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2782,16 +2732,16 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2801,23 +2751,21 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20287, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20287, 0, 0, 16, 16, 1, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20290, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20290, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20293, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20293, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20296, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20296, 0, 0, 16, 16, 1, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2829,27 +2777,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20288, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20288, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20291, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20291, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20298, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20298, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20294, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20294, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20297, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20297, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2873,27 +2819,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20289, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20289, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20292, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20292, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20295, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20295, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20299, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20299, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20286, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20286, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2916,16 +2860,16 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2935,22 +2879,20 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20290, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20290, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20293, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20293, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20296, 0, 0, 16, 16, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20296, 0, 0, 16, 16, 1, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20287, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20287, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -2963,27 +2905,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20291, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20291, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20298, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20298, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20294, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20294, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20297, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20297, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20288, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20288, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3002,7 +2942,7 @@ static void mine_train_rc_track_right_half_banked_helix_up_small( /** rct2: 0x0071C2A4 */ static void mine_train_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3017,7 +2957,7 @@ static void mine_train_rc_track_left_half_banked_helix_down_small( /** rct2: 0x0071C2B4 */ static void mine_train_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3032,7 +2972,7 @@ static void mine_train_rc_track_right_half_banked_helix_down_small( /** rct2: 0x0071C2C4 */ static void mine_train_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3042,27 +2982,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20345, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20345, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20356, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20356, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20350, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20350, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20355, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20355, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20340, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20340, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3086,26 +3024,24 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20344, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20344, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20349, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20349, 0, 0, 32, 16, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20354, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20354, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20339, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20339, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3120,29 +3056,27 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20343, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20343, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20348, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20348, 0, 0, 16, 16, 1, height, 16, 16, height + 27); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20353, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20353, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20338, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20338, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3161,29 +3095,27 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20342, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20342, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20347, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20347, 0, 0, 16, 32, 1, height, 0, 0, height + 27); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20177, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20177, 0, 0, 16, 32, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20352, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20352, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20337, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20337, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3198,27 +3130,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20341, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20341, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20346, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20346, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20351, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20351, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20357, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20357, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20336, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20336, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3242,27 +3172,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20340, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20340, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20345, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20345, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20356, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20356, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20350, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20350, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20355, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20355, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3291,26 +3219,24 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20339, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20339, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20344, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20344, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20349, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20349, 0, 0, 16, 32, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20354, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20354, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3325,29 +3251,27 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20338, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20338, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20343, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20343, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20348, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20348, 0, 0, 16, 16, 1, height, 16, 16, height + 27); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20178, 0, 0, 16, 16, 1, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20353, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20353, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3366,29 +3290,27 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20337, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20337, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20342, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20342, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20347, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20347, 0, 0, 32, 16, 1, height, 0, 0, height + 27); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20177, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20177, 0, 0, 32, 16, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20352, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20352, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3403,27 +3325,25 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20336, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20336, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20341, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20341, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20346, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20346, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20351, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20351, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20357, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20357, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3442,7 +3362,7 @@ static void mine_train_rc_track_left_half_banked_helix_up_large( /** rct2: 0x0071C2D4 */ static void mine_train_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3452,27 +3372,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20314, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20314, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20319, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20319, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20324, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20324, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20329, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20329, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20335, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20335, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3496,26 +3414,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20315, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20315, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20320, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20320, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20325, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20325, 0, 0, 32, 16, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20330, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20330, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3530,26 +3446,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20316, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20316, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20321, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20321, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20326, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20326, 0, 0, 16, 16, 1, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20331, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20331, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3568,26 +3482,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20317, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20317, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20322, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20322, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20327, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20327, 0, 0, 16, 32, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20332, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20332, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3602,27 +3514,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20318, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20318, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20323, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20323, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20334, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20334, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20328, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20328, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20333, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20333, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3646,27 +3556,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20319, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20319, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20324, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20324, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20329, 0, 0, 20, 32, 1, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20329, 0, 0, 20, 32, 1, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20335, 0, 0, 1, 32, 26, height, 27, 0, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20335, 0, 0, 1, 32, 26, height, 27, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20314, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20314, 0, 0, 20, 32, 1, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3695,26 +3603,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20320, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20320, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20325, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20325, 0, 0, 16, 32, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20330, 0, 0, 16, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20330, 0, 0, 16, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20315, 0, 0, 16, 32, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20315, 0, 0, 16, 32, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3729,26 +3635,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20321, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20321, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20326, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20326, 0, 0, 16, 16, 1, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20331, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20331, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20316, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20316, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3767,26 +3671,24 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20322, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20322, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20327, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20327, 0, 0, 32, 16, 1, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20332, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20332, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20317, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20317, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3801,27 +3703,25 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20323, 0, 0, 32, 20, 1, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20323, 0, 0, 32, 20, 1, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20334, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20334, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20328, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20328, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20333, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20333, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20318, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20318, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3840,7 +3740,7 @@ static void mine_train_rc_track_right_half_banked_helix_up_large( /** rct2: 0x0071C2E4 */ static void mine_train_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3855,7 +3755,7 @@ static void mine_train_rc_track_left_half_banked_helix_down_large( /** rct2: 0x0071C2F4 */ static void mine_train_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -3870,7 +3770,7 @@ static void mine_train_rc_track_right_half_banked_helix_down_large( /** rct2: 0x0071C324 */ static void mine_train_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -3878,14 +3778,14 @@ static void mine_train_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20058, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20058, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20059, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20059, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3895,30 +3795,30 @@ static void mine_train_rc_track_brakes( /** rct2: 0x0071C334 */ static void mine_train_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20052, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20053, 0, 0, 32, 20, 1, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } track_paint_util_onride_photo_paint(session, direction, height + 2, trackElement); @@ -3929,7 +3829,7 @@ static void mine_train_rc_track_on_ride_photo( /** rct2: 0x0071C354 */ static void mine_train_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3939,23 +3839,23 @@ static void mine_train_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20452, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20452, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20456, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20456, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20460, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20460, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20464, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20464, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3970,25 +3870,23 @@ static void mine_train_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20453, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20453, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20457, 0, 0, 34, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20457, 0, 0, 34, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20461, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20461, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20465, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20465, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3999,26 +3897,24 @@ static void mine_train_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20454, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20454, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20458, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20458, 0, 0, 16, 16, 1, height, 16, 16, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20462, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20462, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20466, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20466, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4028,16 +3924,16 @@ static void mine_train_rc_track_left_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4048,22 +3944,20 @@ static void mine_train_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20455, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20455, 0, 0, 16, 16, 1, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20459, 0, 0, 16, 18, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20459, 0, 0, 16, 18, 1, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20463, 0, 0, 16, 16, 1, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20463, 0, 0, 16, 16, 1, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20467, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20467, 0, 0, 16, 16, 1, height, 16, 0, height); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4074,7 +3968,7 @@ static void mine_train_rc_track_left_eighth_to_diag( /** rct2: 0x0071C364 */ static void mine_train_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4084,23 +3978,23 @@ static void mine_train_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20436, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20436, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20440, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20440, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20444, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20444, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20448, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20448, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4115,25 +4009,23 @@ static void mine_train_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20437, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20437, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20441, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20441, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20445, 0, 0, 34, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20445, 0, 0, 34, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20449, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20449, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4144,25 +4036,23 @@ static void mine_train_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20438, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20438, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20442, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20442, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20446, 0, 0, 28, 28, 1, height, 4, 4, height); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20446, 0, 0, 28, 28, 1, height, 4, 4, height); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20450, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20450, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4172,16 +4062,16 @@ static void mine_train_rc_track_right_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4192,21 +4082,19 @@ static void mine_train_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20439, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20439, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20443, 0, 0, 16, 16, 1, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20443, 0, 0, 16, 16, 1, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20447, 0, 0, 16, 18, 1, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20447, 0, 0, 16, 18, 1, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20451, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20451, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -4218,7 +4106,7 @@ static void mine_train_rc_track_right_eighth_to_diag( /** rct2: 0x0071C374 */ static void mine_train_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4227,7 +4115,7 @@ static void mine_train_rc_track_left_eighth_to_orthogonal( /** rct2: 0x0071C384 */ static void mine_train_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4236,7 +4124,7 @@ static void mine_train_rc_track_right_eighth_to_orthogonal( /** rct2: 0x0071C394 */ static void mine_train_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4246,25 +4134,23 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20484, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20484, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20488, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20488, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20492, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20492, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20496, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20496, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4279,26 +4165,24 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20485, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20485, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20489, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20489, 0, 0, 34, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20493, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20493, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20497, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20497, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4309,26 +4193,24 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20486, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20486, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20490, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20490, 0, 0, 16, 16, 0, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20494, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20494, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20498, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20498, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4338,16 +4220,16 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4358,22 +4240,21 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20487, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20487, 0, 0, 16, 16, 1, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20491, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20491, 0, 0, 16, 18, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20495, 0, 0, 16, 16, 1, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20495, 0, 0, 16, 16, 1, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20499, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20499, 0, 0, 16, 16, 1, height, 16, 0, height); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4384,7 +4265,7 @@ static void mine_train_rc_track_left_eighth_bank_to_diag( /** rct2: 0x0071C3A4 */ static void mine_train_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4394,25 +4275,23 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20468, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20468, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20472, 0, 0, 32, 32, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20472, 0, 0, 32, 32, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20476, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20476, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20480, 0, 0, 32, 1, 26, height, 0, 27, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20480, 0, 0, 32, 1, 26, height, 0, 27, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4427,26 +4306,24 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20469, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20469, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20473, 0, 0, 32, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20473, 0, 0, 32, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20477, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20477, 0, 0, 34, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20481, 0, 0, 32, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20481, 0, 0, 32, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4457,26 +4334,24 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20470, 0, 0, 16, 16, 1, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20470, 0, 0, 16, 16, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20474, 0, 0, 16, 16, 1, height, 16, 0, - height); - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20474, 0, 0, 16, 16, 1, height, 16, 0, height); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20478, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 20478, 0, 0, 28, 28, 0, height, 4, 4, height + 27); - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20482, 0, 0, 16, 16, 1, height, 0, 16, - height); - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 20482, 0, 0, 16, 16, 1, height, 0, 16, height); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4486,16 +4361,16 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4506,21 +4381,20 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20471, 0, 0, 16, 16, 1, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20471, 0, 0, 16, 16, 1, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20475, 0, 0, 16, 16, 1, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 20475, 0, 0, 16, 16, 1, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20479, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20479, 0, 0, 16, 18, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20483, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20483, 0, 0, 16, 16, 1, height, 16, 16, height); break; } @@ -4532,7 +4406,7 @@ static void mine_train_rc_track_right_eighth_bank_to_diag( /** rct2: 0x0071C3B4 */ static void mine_train_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4541,7 +4415,7 @@ static void mine_train_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x0071C3C4 */ static void mine_train_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4550,7 +4424,7 @@ static void mine_train_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x0071C344 */ static void mine_train_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4562,7 +4436,7 @@ static void mine_train_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20389, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20389, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4573,7 +4447,7 @@ static void mine_train_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20361, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20361, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4588,18 +4462,18 @@ static void mine_train_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20386, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20386, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4609,18 +4483,18 @@ static void mine_train_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20358, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20358, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4633,19 +4507,19 @@ static void mine_train_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20388, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20388, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4654,19 +4528,19 @@ static void mine_train_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20360, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20360, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4680,7 +4554,7 @@ static void mine_train_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20387, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20387, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4691,7 +4565,7 @@ static void mine_train_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20359, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20359, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4704,7 +4578,7 @@ static void mine_train_rc_track_diag_flat( /** rct2: 0x0071C414 */ static void mine_train_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4716,7 +4590,7 @@ static void mine_train_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20401, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20401, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4727,7 +4601,7 @@ static void mine_train_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20373, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20373, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4742,18 +4616,18 @@ static void mine_train_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20398, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20398, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4763,18 +4637,18 @@ static void mine_train_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20370, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20370, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4787,19 +4661,19 @@ static void mine_train_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20400, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20400, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4808,19 +4682,19 @@ static void mine_train_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20372, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20372, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4834,7 +4708,7 @@ static void mine_train_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20399, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20399, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4845,7 +4719,7 @@ static void mine_train_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20371, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20371, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4858,7 +4732,7 @@ static void mine_train_rc_track_diag_25_deg_up( /** rct2: 0x0071C474 */ static void mine_train_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4868,7 +4742,7 @@ static void mine_train_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20385, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20385, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4880,18 +4754,18 @@ static void mine_train_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20382, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20382, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4901,19 +4775,19 @@ static void mine_train_rc_track_diag_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20384, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20384, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4924,7 +4798,7 @@ static void mine_train_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20383, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20383, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4936,7 +4810,7 @@ static void mine_train_rc_track_diag_60_deg_up( /** rct2: 0x0071C3F4 */ static void mine_train_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4948,7 +4822,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20393, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20393, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4959,7 +4833,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20365, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20365, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -4974,18 +4848,18 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20390, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20390, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -4995,18 +4869,18 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20362, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20362, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5019,19 +4893,19 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20392, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20392, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5040,19 +4914,19 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20364, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20364, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5066,7 +4940,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20391, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20391, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5077,7 +4951,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20363, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20363, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5090,7 +4964,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x0071C454 */ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5100,7 +4974,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20377, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20377, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5112,18 +4986,18 @@ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20374, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20374, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5133,19 +5007,19 @@ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20376, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20376, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5156,7 +5030,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20375, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20375, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5168,7 +5042,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x0071C464 */ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5178,7 +5052,7 @@ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20381, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20381, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5190,18 +5064,18 @@ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20378, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20378, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5211,19 +5085,19 @@ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20380, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20380, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5234,7 +5108,7 @@ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20379, -16, -16, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20379, -16, -16, 16, 16, 1, height, 0, 0, height); break; } @@ -5246,7 +5120,7 @@ static void mine_train_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x0071C404 */ static void mine_train_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5258,7 +5132,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20397, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20397, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5269,7 +5143,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20369, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20369, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5284,18 +5158,18 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20394, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20394, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5305,18 +5179,18 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20366, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20366, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5329,19 +5203,19 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20396, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20396, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5350,19 +5224,19 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20368, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20368, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5376,7 +5250,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20395, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20395, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5387,7 +5261,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20367, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20367, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5400,7 +5274,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x0071C444 */ static void mine_train_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5412,7 +5286,7 @@ static void mine_train_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20399, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20399, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5423,7 +5297,7 @@ static void mine_train_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20371, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20371, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5438,18 +5312,18 @@ static void mine_train_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20400, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20400, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5459,18 +5333,18 @@ static void mine_train_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20372, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20372, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5483,19 +5357,19 @@ static void mine_train_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20398, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20398, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5504,19 +5378,19 @@ static void mine_train_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20370, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20370, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5530,7 +5404,7 @@ static void mine_train_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20401, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20401, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5541,7 +5415,7 @@ static void mine_train_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20373, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20373, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5554,7 +5428,7 @@ static void mine_train_rc_track_diag_25_deg_down( /** rct2: 0x0071C4A4 */ static void mine_train_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5564,7 +5438,7 @@ static void mine_train_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20383, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20383, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5576,18 +5450,18 @@ static void mine_train_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20384, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20384, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5597,19 +5471,19 @@ static void mine_train_rc_track_diag_60_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20382, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20382, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5620,7 +5494,7 @@ static void mine_train_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20385, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20385, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5632,7 +5506,7 @@ static void mine_train_rc_track_diag_60_deg_down( /** rct2: 0x0071C424 */ static void mine_train_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5644,7 +5518,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20395, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20395, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5655,7 +5529,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20367, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20367, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5669,18 +5543,18 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20396, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20396, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5690,18 +5564,18 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20368, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20368, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5713,19 +5587,19 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20394, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20394, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5734,19 +5608,19 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20366, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20366, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5759,7 +5633,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20397, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20397, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5770,7 +5644,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20369, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20369, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5784,7 +5658,7 @@ static void mine_train_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x0071C484 */ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5794,7 +5668,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20379, -16, -16, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 20379, -16, -16, 16, 16, 1, height, 0, 0, height); break; } @@ -5806,18 +5680,18 @@ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20380, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20380, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5827,19 +5701,19 @@ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20378, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20378, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5850,7 +5724,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20381, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20381, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5862,7 +5736,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x0071C494 */ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5872,7 +5746,7 @@ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20375, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20375, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5884,18 +5758,18 @@ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20376, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20376, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5905,19 +5779,19 @@ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20374, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20374, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5928,7 +5802,7 @@ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20377, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20377, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5940,7 +5814,7 @@ static void mine_train_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x0071C434 */ static void mine_train_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5952,7 +5826,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20391, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20391, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5963,7 +5837,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20363, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20363, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -5978,18 +5852,18 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20392, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20392, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5999,18 +5873,18 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20364, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20364, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6023,19 +5897,19 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20390, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20390, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6044,19 +5918,19 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20362, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20362, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6070,7 +5944,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20393, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20393, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6081,7 +5955,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20365, -16, -16, 32, 32, 1, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20365, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6094,7 +5968,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x0071C4D4 */ static void mine_train_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6104,7 +5978,7 @@ static void mine_train_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20409, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20409, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6116,21 +5990,21 @@ static void mine_train_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20406, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20406, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20410, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20410, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6140,19 +6014,19 @@ static void mine_train_rc_track_diag_flat_to_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20408, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20408, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6163,7 +6037,7 @@ static void mine_train_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20407, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20407, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6175,7 +6049,7 @@ static void mine_train_rc_track_diag_flat_to_left_bank( /** rct2: 0x0071C4B4 */ static void mine_train_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6185,7 +6059,7 @@ static void mine_train_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20414, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20414, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6197,18 +6071,18 @@ static void mine_train_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20411, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20411, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6218,22 +6092,22 @@ static void mine_train_rc_track_diag_flat_to_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20413, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20413, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20415, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20415, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6244,7 +6118,7 @@ static void mine_train_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20412, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20412, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6256,7 +6130,7 @@ static void mine_train_rc_track_diag_flat_to_right_bank( /** rct2: 0x0071C4C4 */ static void mine_train_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6266,7 +6140,7 @@ static void mine_train_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20412, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20412, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6278,21 +6152,21 @@ static void mine_train_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20413, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20413, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20415, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20415, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6302,19 +6176,19 @@ static void mine_train_rc_track_diag_left_bank_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20411, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20411, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6325,7 +6199,7 @@ static void mine_train_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20414, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20414, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6337,7 +6211,7 @@ static void mine_train_rc_track_diag_left_bank_to_flat( /** rct2: 0x0071C4E4 */ static void mine_train_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6347,7 +6221,7 @@ static void mine_train_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20407, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20407, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6359,18 +6233,18 @@ static void mine_train_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20408, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20408, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6380,22 +6254,22 @@ static void mine_train_rc_track_diag_right_bank_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20406, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20406, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20410, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20410, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6406,7 +6280,7 @@ static void mine_train_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20409, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20409, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6418,7 +6292,7 @@ static void mine_train_rc_track_diag_right_bank_to_flat( /** rct2: 0x0071C514 */ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6428,7 +6302,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20429, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20429, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6440,21 +6314,21 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20426, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20426, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20430, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20430, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6464,19 +6338,19 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20428, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20428, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6487,7 +6361,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20427, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20427, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6499,7 +6373,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x0071C524 */ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6509,7 +6383,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20434, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20434, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6521,18 +6395,18 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20431, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20431, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6542,22 +6416,22 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20433, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20433, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20435, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20435, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6568,7 +6442,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20432, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20432, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6580,7 +6454,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x0071C4F4 */ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6590,7 +6464,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20419, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20419, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6602,21 +6476,21 @@ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20416, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20416, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20420, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20420, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6626,19 +6500,19 @@ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20418, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20418, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6649,7 +6523,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20417, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20417, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6661,7 +6535,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x0071C504 */ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6671,7 +6545,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20424, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20424, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6683,18 +6557,18 @@ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20421, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20421, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6704,22 +6578,22 @@ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20423, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20423, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20425, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20425, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6730,7 +6604,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20422, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20422, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6742,7 +6616,7 @@ static void mine_train_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x0071C534 */ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6752,7 +6626,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20422, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20422, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6762,21 +6636,21 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20423, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20423, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20425, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20425, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -6784,19 +6658,19 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20421, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20421, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -6805,7 +6679,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20424, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20424, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6818,7 +6692,7 @@ static void mine_train_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x0071C544 */ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6828,7 +6702,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20417, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20417, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6838,18 +6712,18 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20418, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20418, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -6857,22 +6731,22 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 10, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 10, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 11, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 11, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20416, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20416, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20420, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20420, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 8, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 8, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 9, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 9, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -6881,7 +6755,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20419, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20419, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6894,7 +6768,7 @@ static void mine_train_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x0071C554 */ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6904,7 +6778,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20432, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20432, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6916,21 +6790,21 @@ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20433, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20433, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20435, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20435, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6940,19 +6814,19 @@ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20431, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20431, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6963,7 +6837,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20434, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20434, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6975,7 +6849,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x0071C564 */ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6985,7 +6859,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20427, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20427, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -6997,18 +6871,18 @@ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20428, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20428, -16, -16, 32, 32, 1, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7018,22 +6892,22 @@ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20426, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20426, -16, -16, 32, 32, 1, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20430, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20430, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7044,7 +6918,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20429, -16, -16, 32, 32, 1, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20429, -16, -16, 32, 32, 1, height, -16, -16, height); break; } @@ -7056,7 +6930,7 @@ static void mine_train_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x0071C3D4 */ static void mine_train_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7066,7 +6940,7 @@ static void mine_train_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20405, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20405, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7079,18 +6953,18 @@ static void mine_train_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20402, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20402, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7101,19 +6975,19 @@ static void mine_train_rc_track_diag_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20404, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20404, -16, -16, 32, 32, 3, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7125,7 +6999,7 @@ static void mine_train_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20403, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20403, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7138,7 +7012,7 @@ static void mine_train_rc_track_diag_left_bank( /** rct2: 0x0071C3E4 */ static void mine_train_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7148,7 +7022,7 @@ static void mine_train_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20403, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20403, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7161,18 +7035,18 @@ static void mine_train_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20404, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20404, -16, -16, 32, 32, 3, height, -16, -16, height); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7183,19 +7057,19 @@ static void mine_train_rc_track_diag_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 10, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 10, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 11, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 11, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20402, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20402, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 9, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 9, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7207,7 +7081,7 @@ static void mine_train_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 20405, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 20405, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7220,14 +7094,14 @@ static void mine_train_rc_track_diag_right_bank( /** rct2: 0x0071C574 */ static void mine_train_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _MineTrainBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | _MineTrainBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); diff --git a/src/openrct2/ride/coaster/MiniRollerCoaster.cpp b/src/openrct2/ride/coaster/MiniRollerCoaster.cpp index 77ca7546df..4f8baf3cde 100644 --- a/src/openrct2/ride/coaster/MiniRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/MiniRollerCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _MiniRCBlockBrakeImages[NumOrthogonalDirections] /** rct2: 0x008A4ABC */ static void mini_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -41,38 +41,38 @@ static void mini_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19044, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19044, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19045, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19045, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19046, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19046, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19047, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19047, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -84,21 +84,21 @@ static void mini_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -110,7 +110,7 @@ static void mini_rc_track_flat( } static void mini_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -124,18 +124,18 @@ static void mini_rc_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _MiniRCBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, - 20, 1, height, 0, 6, height + 3); + session, direction, _MiniRCBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, + 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -144,7 +144,7 @@ static void mini_rc_track_station( /** rct2: 0x008A4ACC */ static void mini_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -153,38 +153,38 @@ static void mini_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19056, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19056, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19057, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19057, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19058, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19058, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19059, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19059, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -195,38 +195,38 @@ static void mini_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18796, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18796, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18797, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18797, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18798, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18798, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18799, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18799, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -246,45 +246,45 @@ static void mini_rc_track_25_deg_up( /** rct2: 0x008A4ADC */ static void mini_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18812, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18812, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 38, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18813, 0, 0, 32, 1, 98, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18813, 0, 0, 32, 1, 98, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 38, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18814, 0, 0, 32, 1, 98, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18814, 0, 0, 32, 1, 98, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 38, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18815, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18815, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 38, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -303,7 +303,7 @@ static void mini_rc_track_60_deg_up( /** rct2: 0x008A4AEC */ static void mini_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -312,38 +312,38 @@ static void mini_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19048, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19048, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19049, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19049, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19050, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19050, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19051, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19051, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -354,38 +354,38 @@ static void mini_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18788, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18788, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18789, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18789, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18790, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18790, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18791, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18791, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -405,49 +405,49 @@ static void mini_rc_track_flat_to_25_deg_up( /** rct2: 0x008A4AFC */ static void mini_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18800, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18800, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18801, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18801, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18804, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18804, 0, 0, 32, 1, 66, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18802, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18802, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18805, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18805, 0, 0, 32, 1, 66, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18803, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18803, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -466,49 +466,49 @@ static void mini_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A4B0C */ static void mini_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18806, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18806, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 26, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 26, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18807, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18807, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18810, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18810, 0, 0, 32, 1, 66, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 26, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 26, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18808, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18808, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18811, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18811, 0, 0, 32, 1, 66, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 26, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 26, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18809, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18809, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 26, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 26, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -527,7 +527,7 @@ static void mini_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A4B1C */ static void mini_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -536,38 +536,38 @@ static void mini_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19052, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19052, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19053, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19053, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19054, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19054, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19055, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19055, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -578,38 +578,38 @@ static void mini_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18792, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18792, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18793, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18793, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18794, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18794, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18795, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18795, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -629,7 +629,7 @@ static void mini_rc_track_25_deg_up_to_flat( /** rct2: 0x008A4B2C */ static void mini_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -637,7 +637,7 @@ static void mini_rc_track_25_deg_down( /** rct2: 0x008A4B3C */ static void mini_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -645,7 +645,7 @@ static void mini_rc_track_60_deg_down( /** rct2: 0x008A4B4C */ static void mini_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -653,7 +653,7 @@ static void mini_rc_track_flat_to_25_deg_down( /** rct2: 0x008A4B5C */ static void mini_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -661,7 +661,7 @@ static void mini_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A4B6C */ static void mini_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -669,7 +669,7 @@ static void mini_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A4B7C */ static void mini_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -677,7 +677,7 @@ static void mini_rc_track_25_deg_down_to_flat( /** rct2: 0x008A4B8C */ static void mini_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -687,27 +687,27 @@ static void mini_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18851, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18851, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18856, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18856, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18861, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18861, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18846, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18846, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -726,21 +726,19 @@ static void mini_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18850, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18850, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18855, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18855, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18860, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18860, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18845, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18845, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -755,22 +753,20 @@ static void mini_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18849, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18849, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18854, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18854, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18859, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18859, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18844, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18844, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -785,21 +781,19 @@ static void mini_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18848, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18848, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18853, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18853, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18858, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18858, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18843, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18843, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -814,27 +808,27 @@ static void mini_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18847, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18847, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18852, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18852, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18857, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18857, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18842, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18842, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -855,7 +849,7 @@ static void mini_rc_track_left_quarter_turn_5( /** rct2: 0x008A4B9C */ static void mini_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -864,49 +858,47 @@ static void mini_rc_track_right_quarter_turn_5( /** rct2: 0x008A4BAC */ static void mini_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18748, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18748, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18756, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18756, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18749, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18749, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18757, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18757, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18750, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18750, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18751, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18751, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -918,49 +910,47 @@ static void mini_rc_track_flat_to_left_bank( /** rct2: 0x008A4BBC */ static void mini_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18752, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18752, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18753, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18753, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18754, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18754, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18758, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18758, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18755, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18755, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18759, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18759, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -972,49 +962,47 @@ static void mini_rc_track_flat_to_right_bank( /** rct2: 0x008A4BCC */ static void mini_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18754, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18754, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18758, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18758, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18755, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18755, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18759, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18759, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18752, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18752, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18753, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18753, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1026,49 +1014,47 @@ static void mini_rc_track_left_bank_to_flat( /** rct2: 0x008A4BDC */ static void mini_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18750, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18750, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18751, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18751, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18748, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18748, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18756, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18756, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18749, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18749, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18757, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18757, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1080,7 +1066,7 @@ static void mini_rc_track_right_bank_to_flat( /** rct2: 0x008A4BEC */ static void mini_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1090,31 +1076,29 @@ static void mini_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18871, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18871, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18882, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18882, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18876, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18876, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18881, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18881, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18866, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18866, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1133,22 +1117,20 @@ static void mini_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18870, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18870, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18875, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18875, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18880, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18880, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18865, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18865, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1163,22 +1145,20 @@ static void mini_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18869, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18869, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18874, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18874, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18879, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18879, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18864, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18864, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1193,22 +1173,20 @@ static void mini_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18868, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18868, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18873, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18873, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18878, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18878, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18863, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18863, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1223,31 +1201,29 @@ static void mini_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18867, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18867, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18872, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18872, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18877, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18877, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18883, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18883, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18862, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18862, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1268,7 +1244,7 @@ static void mini_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008A4BFC */ static void mini_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1277,49 +1253,47 @@ static void mini_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008A4C0C */ static void mini_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18760, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18760, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18764, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18764, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18761, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18761, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18765, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18765, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18762, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18762, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18763, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18763, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1338,49 +1312,47 @@ static void mini_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008A4C1C */ static void mini_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18766, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18766, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18767, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18767, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18768, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18768, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18770, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18770, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18769, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18769, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18771, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18771, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1399,49 +1371,49 @@ static void mini_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008A4C2C */ static void mini_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18772, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18772, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18776, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18776, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18773, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18773, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18777, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18777, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18774, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18774, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18775, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18775, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1460,49 +1432,49 @@ static void mini_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008A4C3C */ static void mini_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18778, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18778, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18779, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18779, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18780, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18780, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18782, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18782, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18781, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18781, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18783, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18783, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1521,7 +1493,7 @@ static void mini_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008A4C4C */ static void mini_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1529,7 +1501,7 @@ static void mini_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008A4C5C */ static void mini_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1537,7 +1509,7 @@ static void mini_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008A4C6C */ static void mini_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1545,7 +1517,7 @@ static void mini_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008A4C7C */ static void mini_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1553,45 +1525,43 @@ static void mini_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008A4C8C */ static void mini_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18784, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18784, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18785, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18785, 0, 0, 32, 1, 26, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18786, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18786, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18787, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18787, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -1603,7 +1573,7 @@ static void mini_rc_track_left_bank( /** rct2: 0x008A4C9C */ static void mini_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1611,7 +1581,7 @@ static void mini_rc_track_right_bank( /** rct2: 0x008A4CAC */ static void mini_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1621,27 +1591,27 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18936, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18936, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18941, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18941, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18946, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18946, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18951, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18951, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1660,21 +1630,19 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18937, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18937, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18942, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18942, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18947, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18947, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18952, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18952, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1689,22 +1657,20 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18938, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18938, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18943, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18943, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18948, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18948, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18953, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18953, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1719,21 +1685,19 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18939, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18939, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18944, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18944, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18949, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18949, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18954, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18954, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1748,27 +1712,27 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18940, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18940, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18945, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18945, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18950, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18950, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18955, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18955, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1789,7 +1753,7 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A4CBC */ static void mini_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1799,27 +1763,27 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18916, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18916, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18921, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18921, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18926, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18926, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18931, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18931, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1838,21 +1802,19 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18917, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18917, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18922, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18922, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18927, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18927, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18932, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18932, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -1867,22 +1829,20 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18918, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18918, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18923, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18923, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18928, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18928, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18933, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18933, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1897,21 +1857,19 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18919, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18919, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18924, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18924, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18929, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18929, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18934, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18934, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1926,27 +1884,27 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18920, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18920, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18925, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18925, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18930, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18930, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18935, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18935, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1967,7 +1925,7 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A4CCC */ static void mini_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1976,7 +1934,7 @@ static void mini_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A4CDC */ static void mini_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1985,7 +1943,7 @@ static void mini_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A4CEC */ static void mini_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1995,27 +1953,27 @@ static void mini_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18900, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18900, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18904, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18904, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18903, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18903, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18907, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18907, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2031,23 +1989,23 @@ static void mini_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18901, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18901, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18905, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18905, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18902, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18902, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18906, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18906, 0, 0, 32, 26, 3, height, 0, 6, height); break; } paint_util_set_segment_support_height( @@ -2062,23 +2020,23 @@ static void mini_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18902, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18902, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18906, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18906, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18901, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18901, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18905, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18905, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2093,27 +2051,27 @@ static void mini_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18903, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18903, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18907, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18907, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18900, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18900, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18904, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18904, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2134,7 +2092,7 @@ static void mini_rc_track_s_bend_left( /** rct2: 0x008A4CFC */ static void mini_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2144,27 +2102,27 @@ static void mini_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18908, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18908, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18912, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18912, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18911, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18911, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18915, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18915, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2180,23 +2138,23 @@ static void mini_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18909, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18909, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18913, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18913, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18910, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18910, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18914, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18914, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -2211,23 +2169,23 @@ static void mini_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18910, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18910, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18914, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18914, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18909, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18909, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18913, 0, 0, 32, 26, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18913, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2242,27 +2200,27 @@ static void mini_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18911, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18911, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18915, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18915, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18908, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18908, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18912, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18912, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2283,7 +2241,7 @@ static void mini_rc_track_s_bend_right( /** rct2: 0x008A4D3C */ static void mini_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2293,27 +2251,27 @@ static void mini_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18821, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18821, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18824, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18824, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18827, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18827, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18818, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18818, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2332,21 +2290,19 @@ static void mini_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18820, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18820, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18823, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18823, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18826, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18826, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18817, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18817, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2359,27 +2315,27 @@ static void mini_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18819, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18819, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18822, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18822, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18825, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18825, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18816, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18816, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2400,7 +2356,7 @@ static void mini_rc_track_left_quarter_turn_3( /** rct2: 0x008A4D4C */ static void mini_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2409,7 +2365,7 @@ static void mini_rc_track_right_quarter_turn_3( /** rct2: 0x008A4D5C */ static void mini_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2419,31 +2375,29 @@ static void mini_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18833, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18833, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18840, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18840, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18836, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18836, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18839, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18839, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18830, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18830, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2462,22 +2416,20 @@ static void mini_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18832, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18832, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18835, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18835, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18838, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18838, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18829, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18829, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2490,31 +2442,29 @@ static void mini_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18831, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18831, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18834, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18834, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18837, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18837, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18841, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18841, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18828, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18828, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2535,7 +2485,7 @@ static void mini_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008A4D6C */ static void mini_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2544,7 +2494,7 @@ static void mini_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008A4D7C */ static void mini_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2554,27 +2504,27 @@ static void mini_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18967, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18967, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18969, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18969, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18971, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18971, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18965, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18965, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2596,27 +2546,27 @@ static void mini_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18966, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18966, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18968, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18968, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18970, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18970, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18964, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18964, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2637,7 +2587,7 @@ static void mini_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A4D8C */ static void mini_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2647,27 +2597,27 @@ static void mini_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18956, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18956, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18958, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18958, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18960, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18960, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18962, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18962, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2689,27 +2639,27 @@ static void mini_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18957, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18957, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18959, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18959, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18961, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18961, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18963, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18963, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2730,7 +2680,7 @@ static void mini_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A4D9C */ static void mini_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2739,7 +2689,7 @@ static void mini_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A4DAC */ static void mini_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2748,7 +2698,7 @@ static void mini_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A4DBC */ static void mini_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2758,31 +2708,29 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18991, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18991, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18998, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18998, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18994, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18994, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18997, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18997, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18988, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18988, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2802,22 +2750,20 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18990, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18990, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18993, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18993, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18996, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18996, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18987, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18987, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2830,31 +2776,29 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18989, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18989, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18992, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18992, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18995, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18995, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18999, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18999, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18986, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18986, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2876,31 +2820,29 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18988, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18988, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18991, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18991, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18998, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18998, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18994, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18994, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18997, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18997, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2925,23 +2867,21 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18987, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18987, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18990, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18990, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18993, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18993, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18996, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18996, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -2953,31 +2893,29 @@ static void mini_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18986, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18986, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18989, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18989, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18992, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18992, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18995, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18995, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18999, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18999, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2994,7 +2932,7 @@ static void mini_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008A4DCC */ static void mini_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3004,31 +2942,29 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18972, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18972, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18975, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18975, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18978, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18978, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18981, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18981, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18985, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18985, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3048,23 +2984,21 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18973, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18973, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18976, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18976, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18979, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18979, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18982, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18982, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3076,31 +3010,29 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18974, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18974, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18977, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18977, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18984, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18984, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18980, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18980, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18983, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18983, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3122,31 +3054,29 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18975, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18975, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18978, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18978, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18981, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18981, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18985, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18985, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18972, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18972, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3171,22 +3101,20 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18976, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18976, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18979, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 18979, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18982, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18982, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18973, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 18973, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3199,31 +3127,29 @@ static void mini_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18977, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18977, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18984, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18984, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18980, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18980, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18983, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18983, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18974, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18974, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3240,7 +3166,7 @@ static void mini_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008A4DDC */ static void mini_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3254,7 +3180,7 @@ static void mini_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008A4DEC */ static void mini_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -3268,7 +3194,7 @@ static void mini_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008A4DFC */ static void mini_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3278,31 +3204,29 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19031, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19031, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19042, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19042, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19036, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19036, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19041, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19041, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19026, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19026, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3322,22 +3246,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19030, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19030, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19035, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19035, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19040, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19040, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19025, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19025, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3352,22 +3274,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19029, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19029, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19034, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19034, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19039, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19039, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19024, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19024, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3382,22 +3302,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19028, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19028, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19033, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19033, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19038, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19038, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19023, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19023, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3412,31 +3330,29 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19027, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19027, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19032, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19032, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19037, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19037, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19043, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19043, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19022, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19022, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3458,31 +3374,29 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19026, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19026, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19031, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19031, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19042, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19042, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19036, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19036, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19041, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19041, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3507,22 +3421,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19025, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19025, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19030, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19030, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19035, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19035, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19040, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19040, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3537,22 +3449,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19024, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19024, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19029, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19029, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19034, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19034, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19039, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19039, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3567,22 +3477,20 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19023, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19023, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19028, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19028, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19033, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19033, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19038, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19038, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3597,31 +3505,29 @@ static void mini_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19022, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19022, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19027, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19027, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19032, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19032, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19037, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19037, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19043, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19043, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3638,7 +3544,7 @@ static void mini_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008A4E0C */ static void mini_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3648,31 +3554,29 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19000, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19000, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19005, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19005, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19010, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19010, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19015, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19015, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19021, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19021, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3692,22 +3596,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19001, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19001, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19006, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19006, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19011, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19011, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19016, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19016, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3722,22 +3624,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19002, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19002, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19007, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19007, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19012, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19012, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19017, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19017, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3752,22 +3652,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19003, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19003, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19008, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19008, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19013, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19013, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19018, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19018, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3782,31 +3680,29 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19004, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19004, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19009, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19009, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19020, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19020, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19014, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19014, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19019, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19019, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3828,31 +3724,29 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19005, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19005, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19010, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19010, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19015, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19015, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19021, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19021, 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19000, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19000, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3877,22 +3771,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19006, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19006, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19011, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19011, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19016, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19016, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19001, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19001, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3907,22 +3799,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19007, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19007, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19012, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19012, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19017, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19017, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19002, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19002, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -3937,22 +3827,20 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19008, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19008, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19013, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19013, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19018, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19018, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19003, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19003, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -3967,31 +3855,29 @@ static void mini_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19009, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19009, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19020, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19020, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19014, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19014, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19019, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19019, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19004, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19004, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4008,7 +3894,7 @@ static void mini_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008A4E1C */ static void mini_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4022,7 +3908,7 @@ static void mini_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008A4E2C */ static void mini_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4036,34 +3922,34 @@ static void mini_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008A4E5C */ static void mini_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18893, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18893, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18897, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18897, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18894, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18894, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18898, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18898, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18895, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18895, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18899, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18899, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18892, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18892, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18896, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18896, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -4073,34 +3959,34 @@ static void mini_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008A4E3C */ static void mini_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18884, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18884, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18888, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18888, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18885, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18885, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18889, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18889, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18886, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18886, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18890, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18890, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18887, 0, 0, 28, 28, 3, height, 2, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 18887, 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18891, 0, 0, 28, 28, 1, height, 2, 2, height + 99); + session, direction, session.TrackColours[SCHEME_TRACK] | 18891, 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } track_paint_util_right_quarter_turn_1_tile_tunnel(session, direction, height, -8, TUNNEL_SQUARE_7, +56, TUNNEL_SQUARE_8); @@ -4110,7 +3996,7 @@ static void mini_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008A4E4C */ static void mini_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -4118,7 +4004,7 @@ static void mini_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008A4E6C */ static void mini_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -4126,7 +4012,7 @@ static void mini_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008A4E7C */ static void mini_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4134,21 +4020,20 @@ static void mini_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18740, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18740, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18741, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 18741, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -4160,45 +4045,45 @@ static void mini_rc_track_brakes( /** rct2: 0x008A50CC */ static void mini_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19222, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19222, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19223, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19223, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19224, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19224, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19225, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19225, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -4217,45 +4102,45 @@ static void mini_rc_track_25_deg_up_left_banked( /** rct2: 0x008A50DC */ static void mini_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19226, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19226, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19227, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19227, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19228, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19228, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19229, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19229, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -4274,42 +4159,38 @@ static void mini_rc_track_25_deg_up_right_banked( /** rct2: 0x008A4E8C */ static void mini_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18738, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 18739, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4320,7 +4201,7 @@ static void mini_rc_track_on_ride_photo( /** rct2: 0x008A50EC */ static void mini_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -4328,7 +4209,7 @@ static void mini_rc_track_25_deg_down_left_banked( /** rct2: 0x008A50FC */ static void mini_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -4336,7 +4217,7 @@ static void mini_rc_track_25_deg_down_right_banked( /** rct2: 0x008A4EAC */ static void mini_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4346,27 +4227,27 @@ static void mini_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19076, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19076, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19080, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19080, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19084, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19084, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19088, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19088, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4382,21 +4263,19 @@ static void mini_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19077, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19077, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19081, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19081, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19085, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19085, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19089, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19089, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4411,22 +4290,20 @@ static void mini_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19078, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19078, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19082, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19082, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19086, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19086, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19090, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19090, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4444,30 +4321,28 @@ static void mini_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19079, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19079, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19083, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19083, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19087, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19087, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19091, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19091, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4482,7 +4357,7 @@ static void mini_rc_track_left_eighth_to_diag( /** rct2: 0x008A4EBC */ static void mini_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4492,27 +4367,27 @@ static void mini_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19060, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19060, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19064, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19064, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19068, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19068, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19072, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19072, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4528,21 +4403,19 @@ static void mini_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19061, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19061, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19065, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19065, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19069, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19069, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19073, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19073, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4557,21 +4430,19 @@ static void mini_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19062, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19062, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19066, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19066, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19070, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19070, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19074, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19074, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4589,30 +4460,28 @@ static void mini_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19063, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19063, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19067, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19067, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19071, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19071, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19075, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19075, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4627,7 +4496,7 @@ static void mini_rc_track_right_eighth_to_diag( /** rct2: 0x008A4ECC */ static void mini_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4636,7 +4505,7 @@ static void mini_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A4EDC */ static void mini_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4645,7 +4514,7 @@ static void mini_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A4EEC */ static void mini_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4655,29 +4524,27 @@ static void mini_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19108, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19108, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19112, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19112, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19116, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19116, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19120, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19120, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4693,22 +4560,20 @@ static void mini_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19109, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19109, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19113, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19113, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19117, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19117, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19121, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19121, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4723,22 +4588,20 @@ static void mini_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19110, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19110, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19114, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19114, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19118, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19118, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19122, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19122, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4756,30 +4619,29 @@ static void mini_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19111, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19111, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19115, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19115, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19119, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19119, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19123, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19123, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4794,7 +4656,7 @@ static void mini_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008A4EFC */ static void mini_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4804,29 +4666,27 @@ static void mini_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19092, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19092, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19096, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19096, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19100, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19100, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19104, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19104, 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4842,22 +4702,20 @@ static void mini_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19093, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19093, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19097, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19097, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19101, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19101, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19105, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19105, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4872,22 +4730,20 @@ static void mini_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19094, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19094, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19098, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19098, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19102, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 19102, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19106, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19106, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4905,30 +4761,29 @@ static void mini_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19095, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19095, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19099, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19099, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19103, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19103, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19107, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19107, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4943,7 +4798,7 @@ static void mini_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008A4F0C */ static void mini_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4952,7 +4807,7 @@ static void mini_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008A4F1C */ static void mini_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -4961,7 +4816,7 @@ static void mini_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008A4E9C */ static void mini_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4973,7 +4828,7 @@ static void mini_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19189, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19189, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4984,7 +4839,7 @@ static void mini_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19127, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19127, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5000,7 +4855,7 @@ static void mini_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19186, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19186, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5011,7 +4866,7 @@ static void mini_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19124, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19124, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5027,7 +4882,7 @@ static void mini_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19188, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19188, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5038,7 +4893,7 @@ static void mini_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19126, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19126, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5054,22 +4909,22 @@ static void mini_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19187, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19187, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5079,22 +4934,22 @@ static void mini_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19125, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19125, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5107,7 +4962,7 @@ static void mini_rc_track_diag_flat( /** rct2: 0x008A4F4C */ static void mini_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5119,7 +4974,7 @@ static void mini_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19201, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19201, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5130,7 +4985,7 @@ static void mini_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19139, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19139, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5146,7 +5001,7 @@ static void mini_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19198, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19198, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5157,7 +5012,7 @@ static void mini_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19136, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19136, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5173,7 +5028,7 @@ static void mini_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19200, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19200, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5184,7 +5039,7 @@ static void mini_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19138, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19138, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5200,22 +5055,22 @@ static void mini_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19199, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19199, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5225,22 +5080,22 @@ static void mini_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19137, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19137, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5253,7 +5108,7 @@ static void mini_rc_track_diag_25_deg_up( /** rct2: 0x008A4FAC */ static void mini_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5263,7 +5118,7 @@ static void mini_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19151, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19151, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5276,7 +5131,7 @@ static void mini_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19148, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19148, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5289,7 +5144,7 @@ static void mini_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19150, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19150, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5302,22 +5157,22 @@ static void mini_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19149, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19149, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 42, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 42, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 42, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 42, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5329,7 +5184,7 @@ static void mini_rc_track_diag_60_deg_up( /** rct2: 0x008A4F2C */ static void mini_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5341,7 +5196,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19193, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19193, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5352,7 +5207,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19131, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19131, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5368,7 +5223,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19190, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19190, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5379,7 +5234,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19128, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19128, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5395,7 +5250,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19192, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19192, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5406,7 +5261,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19130, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19130, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5422,22 +5277,22 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19191, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19191, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5447,22 +5302,22 @@ static void mini_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19129, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19129, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5475,7 +5330,7 @@ static void mini_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A4F8C */ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5485,7 +5340,7 @@ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19143, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19143, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5498,7 +5353,7 @@ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19140, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19140, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5511,7 +5366,7 @@ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19142, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19142, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5524,22 +5379,22 @@ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19141, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19141, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5551,7 +5406,7 @@ static void mini_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A4F9C */ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5561,7 +5416,7 @@ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19147, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19147, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5574,7 +5429,7 @@ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19144, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19144, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5587,7 +5442,7 @@ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19146, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19146, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5600,22 +5455,22 @@ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19145, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19145, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 27, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 27, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5627,7 +5482,7 @@ static void mini_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A4F3C */ static void mini_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5639,7 +5494,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19197, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19197, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5650,7 +5505,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19135, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19135, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5666,7 +5521,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19194, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19194, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5677,7 +5532,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19132, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19132, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5693,7 +5548,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19196, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19196, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5704,7 +5559,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19134, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19134, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5720,22 +5575,22 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19195, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19195, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5745,22 +5600,22 @@ static void mini_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19133, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19133, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5773,7 +5628,7 @@ static void mini_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A4F7C */ static void mini_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5785,7 +5640,7 @@ static void mini_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19199, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19199, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5796,7 +5651,7 @@ static void mini_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19137, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19137, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5812,7 +5667,7 @@ static void mini_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19200, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19200, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5823,7 +5678,7 @@ static void mini_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19138, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19138, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5839,7 +5694,7 @@ static void mini_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19198, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19198, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5850,7 +5705,7 @@ static void mini_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19136, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19136, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5866,22 +5721,22 @@ static void mini_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19201, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19201, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5891,22 +5746,22 @@ static void mini_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19139, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19139, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5919,7 +5774,7 @@ static void mini_rc_track_diag_25_deg_down( /** rct2: 0x008A4FDC */ static void mini_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5929,7 +5784,7 @@ static void mini_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19149, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19149, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5942,7 +5797,7 @@ static void mini_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19150, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19150, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5955,7 +5810,7 @@ static void mini_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19148, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19148, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5968,22 +5823,22 @@ static void mini_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 30, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 30, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19151, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19151, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 34, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 34, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 30, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 30, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 34, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 34, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5995,7 +5850,7 @@ static void mini_rc_track_diag_60_deg_down( /** rct2: 0x008A4F5C */ static void mini_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6007,7 +5862,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19195, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19195, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6018,7 +5873,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19133, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19133, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6033,7 +5888,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19196, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19196, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6044,7 +5899,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19134, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19134, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6059,7 +5914,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19194, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19194, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6070,7 +5925,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19132, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19132, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6085,22 +5940,22 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19197, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19197, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6110,22 +5965,22 @@ static void mini_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19135, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19135, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6139,7 +5994,7 @@ static void mini_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A4FBC */ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6149,7 +6004,7 @@ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19145, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 19145, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6162,7 +6017,7 @@ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19146, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19146, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6175,7 +6030,7 @@ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19144, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19144, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6188,22 +6043,22 @@ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19147, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19147, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6215,7 +6070,7 @@ static void mini_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A4FCC */ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6225,7 +6080,7 @@ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19141, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19141, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6238,7 +6093,7 @@ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19142, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19142, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6251,7 +6106,7 @@ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19140, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19140, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6264,22 +6119,22 @@ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19143, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19143, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6291,7 +6146,7 @@ static void mini_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A4F6C */ static void mini_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6303,7 +6158,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19191, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19191, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6314,7 +6169,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19129, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19129, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6330,7 +6185,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19192, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19192, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6341,7 +6196,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19130, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19130, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6357,7 +6212,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19190, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19190, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6368,7 +6223,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19128, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19128, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6384,22 +6239,22 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19193, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19193, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6409,22 +6264,22 @@ static void mini_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19131, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19131, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6437,7 +6292,7 @@ static void mini_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A500C */ static void mini_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6447,7 +6302,7 @@ static void mini_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19159, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19159, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6460,10 +6315,10 @@ static void mini_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19156, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19156, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19160, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19160, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6476,7 +6331,7 @@ static void mini_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19158, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19158, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6489,22 +6344,22 @@ static void mini_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19157, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19157, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6516,7 +6371,7 @@ static void mini_rc_track_diag_flat_to_left_bank( /** rct2: 0x008A501C */ static void mini_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6526,7 +6381,7 @@ static void mini_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19164, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19164, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6539,7 +6394,7 @@ static void mini_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19161, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19161, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6552,10 +6407,10 @@ static void mini_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19163, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19163, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19165, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19165, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6568,22 +6423,22 @@ static void mini_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19162, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19162, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6595,7 +6450,7 @@ static void mini_rc_track_diag_flat_to_right_bank( /** rct2: 0x008A502C */ static void mini_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6605,7 +6460,7 @@ static void mini_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19162, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19162, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6618,10 +6473,10 @@ static void mini_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19163, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19163, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19165, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19165, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6634,7 +6489,7 @@ static void mini_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19161, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19161, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6647,22 +6502,22 @@ static void mini_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19164, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19164, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6674,7 +6529,7 @@ static void mini_rc_track_diag_left_bank_to_flat( /** rct2: 0x008A503C */ static void mini_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6684,7 +6539,7 @@ static void mini_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19157, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19157, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6697,7 +6552,7 @@ static void mini_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19158, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19158, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6710,10 +6565,10 @@ static void mini_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19156, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19156, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19160, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19160, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -6726,22 +6581,22 @@ static void mini_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19159, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19159, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6753,7 +6608,7 @@ static void mini_rc_track_diag_right_bank_to_flat( /** rct2: 0x008A506C */ static void mini_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6763,7 +6618,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19179, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19179, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6776,10 +6631,10 @@ static void mini_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19176, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19176, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19180, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19180, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -6792,7 +6647,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19178, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19178, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6805,22 +6660,22 @@ static void mini_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19177, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19177, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6832,7 +6687,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008A507C */ static void mini_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6842,7 +6697,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19184, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19184, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6855,7 +6710,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19181, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19181, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6868,10 +6723,10 @@ static void mini_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19183, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19183, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19185, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19185, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -6884,22 +6739,22 @@ static void mini_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19182, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19182, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6911,7 +6766,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008A504C */ static void mini_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6921,7 +6776,7 @@ static void mini_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19169, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19169, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6934,10 +6789,10 @@ static void mini_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19166, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19166, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19170, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19170, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -6950,7 +6805,7 @@ static void mini_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19168, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19168, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6963,22 +6818,22 @@ static void mini_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19167, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19167, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6990,7 +6845,7 @@ static void mini_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008A505C */ static void mini_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7000,7 +6855,7 @@ static void mini_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19174, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19174, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7013,7 +6868,7 @@ static void mini_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19171, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19171, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7026,10 +6881,10 @@ static void mini_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19173, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19173, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19175, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19175, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7042,22 +6897,22 @@ static void mini_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19172, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19172, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7069,7 +6924,7 @@ static void mini_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008A508C */ static void mini_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7079,7 +6934,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19172, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19172, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7091,10 +6946,10 @@ static void mini_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19173, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19173, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19175, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19175, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7106,7 +6961,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19171, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19171, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7118,22 +6973,22 @@ static void mini_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19174, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19174, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7146,7 +7001,7 @@ static void mini_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008A509C */ static void mini_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7156,7 +7011,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19167, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19167, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7168,7 +7023,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19168, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19168, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7180,10 +7035,10 @@ static void mini_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19166, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19166, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19170, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19170, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7195,22 +7050,22 @@ static void mini_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19169, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19169, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7223,7 +7078,7 @@ static void mini_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008A50AC */ static void mini_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7233,7 +7088,7 @@ static void mini_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19182, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19182, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7246,10 +7101,10 @@ static void mini_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19183, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19183, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19185, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19185, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7262,7 +7117,7 @@ static void mini_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19181, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19181, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7275,22 +7130,22 @@ static void mini_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19184, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19184, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7302,7 +7157,7 @@ static void mini_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008A50BC */ static void mini_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7312,7 +7167,7 @@ static void mini_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19177, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19177, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7325,7 +7180,7 @@ static void mini_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19178, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19178, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7338,10 +7193,10 @@ static void mini_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19176, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19176, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19180, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19180, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7354,22 +7209,22 @@ static void mini_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19179, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19179, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7381,7 +7236,7 @@ static void mini_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008A4FEC */ static void mini_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7391,7 +7246,7 @@ static void mini_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19155, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19155, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7404,7 +7259,7 @@ static void mini_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19152, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19152, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7417,7 +7272,7 @@ static void mini_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19154, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19154, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7430,22 +7285,22 @@ static void mini_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19153, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19153, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7457,7 +7312,7 @@ static void mini_rc_track_diag_left_bank( /** rct2: 0x008A4FFC */ static void mini_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7467,7 +7322,7 @@ static void mini_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19153, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19153, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7480,7 +7335,7 @@ static void mini_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19154, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19154, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7493,7 +7348,7 @@ static void mini_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19152, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19152, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7506,22 +7361,22 @@ static void mini_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19155, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 19155, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7533,29 +7388,28 @@ static void mini_rc_track_diag_right_bank( /** rct2: 0x008A530C */ static void mini_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _MiniRCBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | _MiniRCBlockBrakeImages[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); switch (direction) { case 0: case 2: - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: case 3: - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -7567,7 +7421,7 @@ static void mini_rc_track_block_brakes( /** rct2: 0x008A510C */ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7577,28 +7431,27 @@ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19317, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19317, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19319, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19319, 0, 6, 32, 1, 34, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19321, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19321, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19315, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19315, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7620,29 +7473,27 @@ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19316, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19316, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19318, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19318, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19320, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19320, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19314, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19314, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7663,7 +7514,7 @@ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A511C */ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7673,28 +7524,27 @@ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19306, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19306, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19308, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19308, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19310, 0, 6, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19310, 0, 6, 32, 1, 34, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19312, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19312, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7716,29 +7566,27 @@ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19307, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19307, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19309, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19309, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19311, 6, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19311, 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19313, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19313, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7759,7 +7607,7 @@ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008A512C */ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7769,7 +7617,7 @@ static void mini_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A513C */ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7778,7 +7626,7 @@ static void mini_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008A514C */ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7788,28 +7636,27 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19286, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19286, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19291, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19291, 0, 0, 32, 1, 34, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19296, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19296, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19301, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19301, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7828,22 +7675,19 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19287, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19287, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19292, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19292, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19297, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19297, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19302, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19302, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -7858,22 +7702,19 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19288, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19288, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19293, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19293, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19298, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19298, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19303, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19303, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -7888,23 +7729,19 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19289, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19289, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19294, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19294, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19299, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19299, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19304, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19304, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -7919,29 +7756,27 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19290, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19290, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19295, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19295, 0, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19300, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19300, 0, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19305, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19305, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7962,7 +7797,7 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A515C */ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7972,28 +7807,27 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19266, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19266, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19271, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19271, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19276, 0, 0, 32, 1, 34, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19276, 0, 0, 32, 1, 34, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19281, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19281, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -8012,22 +7846,19 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19267, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19267, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19272, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19272, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19277, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19277, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19282, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19282, 0, 0, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -8042,22 +7873,19 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19268, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19268, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19273, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19273, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19278, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19278, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19283, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19283, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -8072,23 +7900,19 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19269, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19269, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19274, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19274, 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19279, 0, 0, 1, 1, 34, height, 30, 30, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19279, 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19284, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19284, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8103,29 +7927,27 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19270, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19270, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19275, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19275, 0, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19280, 0, 0, 1, 32, 34, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19280, 0, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19285, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19285, 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -8146,7 +7968,7 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008A516C */ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8156,7 +7978,7 @@ static void mini_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A517C */ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8165,47 +7987,47 @@ static void mini_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008A518C */ static void mini_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19230, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19230, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19231, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19231, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19238, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19238, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19232, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19232, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19233, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19233, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8224,47 +8046,47 @@ static void mini_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x008A519C */ static void mini_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19234, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19234, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19235, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19235, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19236, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19236, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19239, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19239, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19237, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19237, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8283,47 +8105,47 @@ static void mini_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x008A51AC */ static void mini_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19240, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19240, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19241, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19241, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19248, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19248, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19242, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19242, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19243, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19243, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8342,47 +8164,47 @@ static void mini_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A51BC */ static void mini_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19244, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19244, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19245, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19245, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19246, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19246, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19249, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19249, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19247, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19247, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8401,7 +8223,7 @@ static void mini_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008A51CC */ static void mini_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8409,7 +8231,7 @@ static void mini_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x008A51DC */ static void mini_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8417,7 +8239,7 @@ static void mini_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x008A51EC */ static void mini_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8425,7 +8247,7 @@ static void mini_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A51FC */ static void mini_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_25_deg_up_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8433,45 +8255,43 @@ static void mini_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008A520C */ static void mini_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19250, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19250, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19251, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19251, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19252, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19252, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19253, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19253, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8490,45 +8310,43 @@ static void mini_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x008A521C */ static void mini_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19254, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19254, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19255, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19255, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19256, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19256, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19257, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19257, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8547,45 +8365,45 @@ static void mini_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x008A524C */ static void mini_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19258, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19258, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19259, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19259, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19260, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19260, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19261, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19261, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8604,45 +8422,45 @@ static void mini_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x008A525C */ static void mini_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19262, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19262, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19263, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19263, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19264, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19264, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19265, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19265, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8661,7 +8479,7 @@ static void mini_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x008A526C */ static void mini_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -8670,7 +8488,7 @@ static void mini_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x008A527C */ static void mini_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -8679,7 +8497,7 @@ static void mini_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x008A522C */ static void mini_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -8688,7 +8506,7 @@ static void mini_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x008A523C */ static void mini_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -8697,47 +8515,45 @@ static void mini_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x008A528C */ static void mini_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19202, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19202, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19203, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19203, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19210, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19210, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19204, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19204, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19205, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19205, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8756,47 +8572,45 @@ static void mini_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x008A529C */ static void mini_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19206, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19206, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19207, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19207, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19208, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19208, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19211, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19211, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19209, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19209, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8815,47 +8629,47 @@ static void mini_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x008A52AC */ static void mini_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19212, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19212, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19213, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19213, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19220, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19220, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19214, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19214, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19215, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19215, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8874,47 +8688,47 @@ static void mini_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x008A52BC */ static void mini_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19216, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19216, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19217, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19217, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19218, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19218, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19221, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19221, 0, 0, 32, 1, 34, height, 0, 27, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19219, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + session, direction, session.TrackColours[SCHEME_TRACK] | 19219, 0, 0, 32, 20, 3, height, 0, 6, height); + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -8933,7 +8747,7 @@ static void mini_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x008A52CC */ static void mini_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8941,7 +8755,7 @@ static void mini_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x008A52DC */ static void mini_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8949,7 +8763,7 @@ static void mini_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x008A52EC */ static void mini_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -8957,14 +8771,14 @@ static void mini_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x008A52FC */ static void mini_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void mini_rc_track_left_curved_lift_hill( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8974,27 +8788,27 @@ static void mini_rc_track_left_curved_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19333, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19333, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19335, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19335, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19337, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19337, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19331, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19331, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9016,27 +8830,27 @@ static void mini_rc_track_left_curved_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19332, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19332, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19334, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19334, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19336, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19336, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19330, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19330, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9056,7 +8870,7 @@ static void mini_rc_track_left_curved_lift_hill( } static void mini_rc_track_right_curved_lift_hill( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9066,27 +8880,27 @@ static void mini_rc_track_right_curved_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19322, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19322, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19324, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19324, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19326, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19326, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19328, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19328, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9108,27 +8922,27 @@ static void mini_rc_track_right_curved_lift_hill( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19323, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19323, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19325, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19325, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19327, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19327, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 19329, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 19329, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9148,7 +8962,7 @@ static void mini_rc_track_right_curved_lift_hill( } static void mini_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { // These offsets could be moved to the g2.dat file when that supports offsets. @@ -9162,23 +8976,22 @@ static void mini_rc_track_booster( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_MINI_RC_BOOSTER_NE_SW, ne_sw_offsetX, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_MINI_RC_BOOSTER_NE_SW, ne_sw_offsetX, ne_sw_offsetY, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_G2_MINI_RC_BOOSTER_NW_SE, nw_se_offsetX, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_G2_MINI_RC_BOOSTER_NW_SE, nw_se_offsetX, nw_se_offsetY, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } diff --git a/src/openrct2/ride/coaster/MiniSuspendedCoaster.cpp b/src/openrct2/ride/coaster/MiniSuspendedCoaster.cpp index a0509819e7..4aa8c4fb39 100644 --- a/src/openrct2/ride/coaster/MiniSuspendedCoaster.cpp +++ b/src/openrct2/ride/coaster/MiniSuspendedCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008AFE9C */ static void mini_suspended_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -30,12 +30,12 @@ static void mini_suspended_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28433, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28433, 0, 6, 32, 20, 1, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28434, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28434, 0, 6, 32, 20, 1, height + 24); break; } } @@ -46,31 +46,31 @@ static void mini_suspended_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28383, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28383, 0, 6, 32, 20, 1, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28384, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28384, 0, 6, 32, 20, 1, height + 24); break; } } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -81,7 +81,7 @@ static void mini_suspended_rc_track_flat( /** rct2: 0x008AFF4C, 0x008AFF5C, 0x008AFF6C */ static void mini_suspended_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -92,13 +92,13 @@ static void mini_suspended_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height + 24); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height + 24); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 2, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 1, height + 24, 0, 2, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 3); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_1); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -107,7 +107,7 @@ static void mini_suspended_rc_track_station( /** rct2: 0x008AFEAC */ static void mini_suspended_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -116,22 +116,22 @@ static void mini_suspended_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28435, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28435, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28441, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28441, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28437, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28437, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28442, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28442, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; } @@ -142,22 +142,22 @@ static void mini_suspended_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28385, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28385, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28391, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28391, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28387, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28387, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28392, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28392, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 40); break; } @@ -165,25 +165,25 @@ static void mini_suspended_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -201,7 +201,7 @@ static void mini_suspended_rc_track_25_deg_up( /** rct2: 0x008AFEBC */ static void mini_suspended_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -210,22 +210,22 @@ static void mini_suspended_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28436, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28436, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28443, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28443, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28438, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28438, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28444, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28444, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; } @@ -236,22 +236,22 @@ static void mini_suspended_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28386, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28386, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28393, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28393, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28388, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28388, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28394, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28394, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; } @@ -259,25 +259,25 @@ static void mini_suspended_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 6, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 6, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 7, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 7, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -295,7 +295,7 @@ static void mini_suspended_rc_track_flat_to_25_deg_up( /** rct2: 0x008AFECC */ static void mini_suspended_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -304,22 +304,22 @@ static void mini_suspended_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28440, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28440, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28446, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28446, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28439, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28439, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28445, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28445, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; } @@ -330,22 +330,22 @@ static void mini_suspended_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28390, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28390, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28396, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28396, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28389, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28389, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28395, 0, 6, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28395, 0, 6, 32, 20, 1, height + 24, 0, 6, height + 32); break; } @@ -353,25 +353,25 @@ static void mini_suspended_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 6, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 6, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 8, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 7, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 7, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 38, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 5, 0, height + 38, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -389,7 +389,7 @@ static void mini_suspended_rc_track_25_deg_up_to_flat( /** rct2: 0x008AFEDC */ static void mini_suspended_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_suspended_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -397,7 +397,7 @@ static void mini_suspended_rc_track_25_deg_down( /** rct2: 0x008AFEEC */ static void mini_suspended_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_suspended_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -405,7 +405,7 @@ static void mini_suspended_rc_track_flat_to_25_deg_down( /** rct2: 0x008AFEFC */ static void mini_suspended_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { mini_suspended_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -413,7 +413,7 @@ static void mini_suspended_rc_track_25_deg_down_to_flat( /** rct2: 0x008AFF0C */ static void mini_suspended_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -423,19 +423,19 @@ static void mini_suspended_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28406, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28406, 0, 6, 32, 20, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28411, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28411, 0, 6, 32, 20, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28416, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28416, 0, 6, 32, 20, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28401, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28401, 0, 6, 32, 20, 1, height + 24); break; } @@ -447,12 +447,12 @@ static void mini_suspended_rc_track_left_quarter_turn_5( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -470,19 +470,19 @@ static void mini_suspended_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28405, 0, 0, 32, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28405, 0, 0, 32, 16, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28410, 0, 0, 32, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28410, 0, 0, 32, 16, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28415, 0, 16, 32, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28415, 0, 16, 32, 16, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28400, 0, 16, 32, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28400, 0, 16, 32, 16, 1, height + 24); break; } paint_util_set_segment_support_height( @@ -497,19 +497,19 @@ static void mini_suspended_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28404, 0, 16, 16, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28404, 0, 16, 16, 16, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28409, 16, 16, 16, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28409, 16, 16, 16, 16, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28414, 16, 0, 16, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28414, 16, 0, 16, 16, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28399, 0, 0, 16, 16, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28399, 0, 0, 16, 16, 1, height + 24); break; } paint_util_set_segment_support_height( @@ -524,19 +524,19 @@ static void mini_suspended_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28403, 16, 0, 16, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28403, 16, 0, 16, 32, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28408, 0, 0, 16, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28408, 0, 0, 16, 32, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28413, 0, 0, 16, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28413, 0, 0, 16, 32, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28398, 16, 0, 16, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28398, 16, 0, 16, 32, 1, height + 24); break; } paint_util_set_segment_support_height( @@ -551,19 +551,19 @@ static void mini_suspended_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28402, 6, 0, 20, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28402, 6, 0, 20, 32, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28407, 6, 0, 20, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28407, 6, 0, 20, 32, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28412, 6, 0, 20, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28412, 6, 0, 20, 32, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28397, 6, 0, 20, 32, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28397, 6, 0, 20, 32, 1, height + 24); break; } @@ -575,12 +575,12 @@ static void mini_suspended_rc_track_left_quarter_turn_5( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -600,7 +600,7 @@ static void mini_suspended_rc_track_left_quarter_turn_5( /** rct2: 0x008AFF1C */ static void mini_suspended_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -609,7 +609,7 @@ static void mini_suspended_rc_track_right_quarter_turn_5( /** rct2: 0x008AFF2C */ static void mini_suspended_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -619,19 +619,19 @@ static void mini_suspended_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28421, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28421, 0, 6, 32, 20, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28428, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28428, 0, 6, 32, 20, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28424, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28424, 0, 6, 32, 20, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28425, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28425, 0, 6, 32, 20, 1, height + 24); break; } @@ -642,12 +642,12 @@ static void mini_suspended_rc_track_s_bend_left( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -662,19 +662,19 @@ static void mini_suspended_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28422, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28422, 0, 0, 32, 26, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28427, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28427, 0, 0, 32, 26, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28423, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28423, 0, 6, 32, 26, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28426, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28426, 0, 6, 32, 26, 1, height + 24); break; } @@ -687,11 +687,11 @@ static void mini_suspended_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -702,19 +702,19 @@ static void mini_suspended_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28423, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28423, 0, 6, 32, 26, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28426, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28426, 0, 6, 32, 26, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28422, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28422, 0, 0, 32, 26, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28427, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28427, 0, 0, 32, 26, 1, height + 24); break; } @@ -727,11 +727,11 @@ static void mini_suspended_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 5, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 5, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 6, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 6, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -742,19 +742,19 @@ static void mini_suspended_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28424, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28424, 0, 6, 32, 20, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28425, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28425, 0, 6, 32, 20, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28421, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28421, 0, 6, 32, 20, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28428, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28428, 0, 6, 32, 20, 1, height + 24); break; } @@ -765,12 +765,12 @@ static void mini_suspended_rc_track_s_bend_left( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -790,7 +790,7 @@ static void mini_suspended_rc_track_s_bend_left( /** rct2: 0x008AFF3C */ static void mini_suspended_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -800,19 +800,19 @@ static void mini_suspended_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28417, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28417, 0, 6, 32, 20, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28432, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28432, 0, 6, 32, 20, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28420, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28420, 0, 6, 32, 20, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28429, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28429, 0, 6, 32, 20, 1, height + 24); break; } @@ -823,12 +823,12 @@ static void mini_suspended_rc_track_s_bend_right( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -843,19 +843,19 @@ static void mini_suspended_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28418, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28418, 0, 6, 32, 26, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28431, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28431, 0, 6, 32, 26, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28419, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28419, 0, 0, 32, 26, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28430, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28430, 0, 0, 32, 26, 1, height + 24); break; } @@ -868,11 +868,11 @@ static void mini_suspended_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -883,19 +883,19 @@ static void mini_suspended_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28419, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28419, 0, 0, 32, 26, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28430, 0, 0, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28430, 0, 0, 32, 26, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28418, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28418, 0, 6, 32, 26, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28431, 0, 6, 32, 26, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28431, 0, 6, 32, 26, 1, height + 24); break; } @@ -908,11 +908,11 @@ static void mini_suspended_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 8, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 8, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 7, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 7, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -923,19 +923,19 @@ static void mini_suspended_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28420, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28420, 0, 6, 32, 20, 1, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28429, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28429, 0, 6, 32, 20, 1, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28417, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28417, 0, 6, 32, 20, 1, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28432, 0, 6, 32, 20, 1, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28432, 0, 6, 32, 20, 1, height + 24); break; } @@ -946,12 +946,12 @@ static void mini_suspended_rc_track_s_bend_right( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -971,7 +971,7 @@ static void mini_suspended_rc_track_s_bend_right( /** rct2: 0x008AFF7C */ static void mini_suspended_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -981,19 +981,19 @@ static void mini_suspended_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28452, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28452, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28455, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28455, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28458, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28458, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28449, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28449, 0, 6, 32, 20, 3, height + 24); break; } @@ -1005,12 +1005,12 @@ static void mini_suspended_rc_track_left_quarter_turn_3( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1028,19 +1028,19 @@ static void mini_suspended_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28451, 16, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28451, 16, 0, 16, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28454, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28454, 0, 0, 16, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28457, 0, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28457, 0, 16, 16, 16, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28448, 16, 16, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28448, 16, 16, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -1052,19 +1052,19 @@ static void mini_suspended_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28450, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28450, 6, 0, 20, 32, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28453, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28453, 6, 0, 20, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28456, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28456, 6, 0, 20, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28447, 6, 0, 20, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 28447, 6, 0, 20, 32, 3, height + 24); break; } @@ -1076,12 +1076,12 @@ static void mini_suspended_rc_track_left_quarter_turn_3( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1101,7 +1101,7 @@ static void mini_suspended_rc_track_left_quarter_turn_3( /** rct2: 0x008AFF8C */ static void mini_suspended_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1110,7 +1110,7 @@ static void mini_suspended_rc_track_right_quarter_turn_3( /** rct2: 0x008AFFAC */ static void mini_suspended_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1120,22 +1120,22 @@ static void mini_suspended_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28475, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28475, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28479, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28479, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28483, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28483, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28487, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28487, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; } @@ -1147,12 +1147,12 @@ static void mini_suspended_rc_track_left_eighth_to_diag( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1167,22 +1167,22 @@ static void mini_suspended_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28476, 0, 0, 32, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28476, 0, 0, 32, 16, 1, height + 24, 0, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28480, 0, 0, 34, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28480, 0, 0, 34, 16, 1, height + 24, 0, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28484, 0, 0, 32, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28484, 0, 0, 32, 16, 1, height + 24, 0, 16, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28488, 0, 0, 32, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28488, 0, 0, 32, 16, 1, height + 24, 0, 16, height + 24); break; } @@ -1198,22 +1198,22 @@ static void mini_suspended_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28477, 0, 0, 16, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28477, 0, 0, 16, 16, 1, height + 24, 0, 16, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28481, 0, 0, 16, 16, 1, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28481, 0, 0, 16, 16, 1, height + 24, 16, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28485, 0, 0, 16, 16, 1, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28485, 0, 0, 16, 16, 1, height + 24, 16, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28489, 0, 0, 16, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28489, 0, 0, 16, 16, 1, height + 24, 0, 0, height + 24); break; } @@ -1232,22 +1232,22 @@ static void mini_suspended_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28478, 0, 0, 16, 16, 1, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28478, 0, 0, 16, 16, 1, height + 24, 16, 16, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28482, 0, 0, 16, 18, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28482, 0, 0, 16, 18, 1, height + 24, 0, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28486, 0, 0, 16, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28486, 0, 0, 16, 16, 1, height + 24, 0, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28490, 0, 0, 16, 16, 1, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28490, 0, 0, 16, 16, 1, height + 24, 16, 0, height + 24); break; } @@ -1261,19 +1261,19 @@ static void mini_suspended_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 3, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 3, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 1, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 1, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 0, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 0, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 2, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 2, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1284,7 +1284,7 @@ static void mini_suspended_rc_track_left_eighth_to_diag( /** rct2: 0x008AFFBC */ static void mini_suspended_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1294,22 +1294,22 @@ static void mini_suspended_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28459, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28459, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28463, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28463, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28467, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28467, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28471, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 28471, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 24); break; } @@ -1321,12 +1321,12 @@ static void mini_suspended_rc_track_right_eighth_to_diag( case 0: case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 4, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1341,22 +1341,22 @@ static void mini_suspended_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28460, 0, 0, 32, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28460, 0, 0, 32, 16, 1, height + 24, 0, 16, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28464, 0, 0, 32, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28464, 0, 0, 32, 16, 1, height + 24, 0, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28468, 0, 0, 34, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28468, 0, 0, 34, 16, 1, height + 24, 0, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28472, 0, 0, 32, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28472, 0, 0, 32, 16, 1, height + 24, 0, 0, height + 24); break; } @@ -1372,22 +1372,22 @@ static void mini_suspended_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28461, 0, 0, 16, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28461, 0, 0, 16, 16, 1, height + 24, 0, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28465, 0, 0, 16, 16, 1, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28465, 0, 0, 16, 16, 1, height + 24, 16, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28469, 0, 0, 28, 28, 1, height + 24, 4, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 28469, 0, 0, 28, 28, 1, height + 24, 4, 2, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28473, 0, 0, 16, 16, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28473, 0, 0, 16, 16, 1, height + 24, 0, 16, height + 24); break; } @@ -1406,22 +1406,22 @@ static void mini_suspended_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28462, 0, 0, 16, 16, 1, height + 24, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28462, 0, 0, 16, 16, 1, height + 24, 16, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28466, 0, 0, 16, 16, 1, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 28466, 0, 0, 16, 16, 1, height + 24, 0, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28470, 0, 0, 16, 18, 1, height + 24, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28470, 0, 0, 16, 18, 1, height + 24, 0, 16, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28474, 0, 0, 16, 16, 1, height + 24, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28474, 0, 0, 16, 16, 1, height + 24, 16, 16, height + 24); break; } @@ -1435,19 +1435,19 @@ static void mini_suspended_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1458,7 +1458,7 @@ static void mini_suspended_rc_track_right_eighth_to_diag( /** rct2: 0x008AFFCC */ static void mini_suspended_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1467,7 +1467,7 @@ static void mini_suspended_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008AFFDC */ static void mini_suspended_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1476,7 +1476,7 @@ static void mini_suspended_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008AFF9C */ static void mini_suspended_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1488,7 +1488,7 @@ static void mini_suspended_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28510, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28510, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1499,7 +1499,7 @@ static void mini_suspended_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28494, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28494, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1515,7 +1515,7 @@ static void mini_suspended_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28507, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28507, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1526,7 +1526,7 @@ static void mini_suspended_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28491, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28491, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1542,7 +1542,7 @@ static void mini_suspended_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28509, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28509, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1553,7 +1553,7 @@ static void mini_suspended_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28493, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28493, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1569,7 +1569,7 @@ static void mini_suspended_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28508, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28508, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1580,7 +1580,7 @@ static void mini_suspended_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28492, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28492, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 24); break; } @@ -1592,19 +1592,19 @@ static void mini_suspended_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 30, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 30, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1615,7 +1615,7 @@ static void mini_suspended_rc_track_diag_flat( /** rct2: 0x008B000C */ static void mini_suspended_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1627,7 +1627,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28522, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28522, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1638,7 +1638,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28506, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28506, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1654,7 +1654,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28519, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28519, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1665,7 +1665,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28503, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28503, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1681,7 +1681,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28521, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28521, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1692,7 +1692,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28505, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28505, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1708,7 +1708,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28520, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28520, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1719,7 +1719,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28504, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28504, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -1731,19 +1731,19 @@ static void mini_suspended_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1754,7 +1754,7 @@ static void mini_suspended_rc_track_diag_25_deg_up( /** rct2: 0x008AFFEC */ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1766,7 +1766,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28514, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28514, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1777,7 +1777,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28498, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28498, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1793,7 +1793,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28511, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28511, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1804,7 +1804,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28495, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28495, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1820,7 +1820,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28513, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28513, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1831,7 +1831,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28497, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28497, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1847,7 +1847,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28512, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28512, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1858,7 +1858,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28496, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28496, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1870,19 +1870,19 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1893,7 +1893,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008AFFFC */ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1905,7 +1905,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28518, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28518, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1916,7 +1916,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28502, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28502, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1932,7 +1932,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28515, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28515, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1943,7 +1943,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28499, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28499, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1959,7 +1959,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28517, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28517, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1970,7 +1970,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28501, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28501, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1986,7 +1986,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28516, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28516, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -1997,7 +1997,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28500, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28500, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2009,19 +2009,19 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2032,7 +2032,7 @@ static void mini_suspended_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008B003C */ static void mini_suspended_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2044,7 +2044,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28520, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28520, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2055,7 +2055,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28504, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28504, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2071,7 +2071,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28521, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28521, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2082,7 +2082,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28505, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28505, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2098,7 +2098,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28519, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28519, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2109,7 +2109,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28503, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28503, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2125,7 +2125,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28522, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28522, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2136,7 +2136,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28506, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28506, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 40); break; } @@ -2148,19 +2148,19 @@ static void mini_suspended_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2171,7 +2171,7 @@ static void mini_suspended_rc_track_diag_25_deg_down( /** rct2: 0x008B001C */ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2183,7 +2183,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28516, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28516, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2194,7 +2194,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28500, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28500, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2209,7 +2209,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28517, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28517, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2220,7 +2220,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28501, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28501, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2235,7 +2235,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28515, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28515, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2246,7 +2246,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28499, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28499, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2261,7 +2261,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28518, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28518, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2272,7 +2272,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28502, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28502, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2284,19 +2284,19 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -2307,7 +2307,7 @@ static void mini_suspended_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008B002C */ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2319,7 +2319,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28512, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28512, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2330,7 +2330,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28496, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28496, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2346,7 +2346,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28513, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28513, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2357,7 +2357,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28497, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28497, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2373,7 +2373,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28511, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28511, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2384,7 +2384,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28495, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28495, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2400,7 +2400,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28514, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28514, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2411,7 +2411,7 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28498, -16, -16, 32, 32, 1, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 28498, -16, -16, 32, 32, 1, height + 24, -16, -16, height + 32); break; } @@ -2423,19 +2423,19 @@ static void mini_suspended_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 1, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 1, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 0, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK, 2, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK, 2, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 34, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_FORK_ALT, 3, 0, height + 34, session.TrackColours[SCHEME_SUPPORTS]); break; } diff --git a/src/openrct2/ride/coaster/MultiDimensionRollerCoaster.cpp b/src/openrct2/ride/coaster/MultiDimensionRollerCoaster.cpp index 6f60ea5e39..88592631df 100644 --- a/src/openrct2/ride/coaster/MultiDimensionRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/MultiDimensionRollerCoaster.cpp @@ -35,7 +35,7 @@ static constexpr const uint32_t MULTI_DIM_INVERTED_BLOCK_BRAKE_NW_SE_CLOSED = 26 /** rct2: 0x00792D88 */ static void multi_dimension_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -47,18 +47,18 @@ static void multi_dimension_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15808, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15808, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15809, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15809, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -68,18 +68,18 @@ static void multi_dimension_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -93,23 +93,23 @@ static void multi_dimension_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 1, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 1, height + 24, 0, 6, height + 22); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -119,7 +119,7 @@ static void multi_dimension_rc_track_flat( /** rct2: 0x00792F98, 0x00792FA8, 0x00792FB8 */ static void multi_dimension_rc_track_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[NumOrthogonalDirections][3] = { @@ -134,38 +134,38 @@ static void multi_dimension_rc_track_station( bool isClosed = trackElement.BlockBrakeClosed(); uint8_t offset = isClosed ? 2 : 1; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][offset] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 26, 1, height, 0, - 3, height + 3); + session, direction, imageIds[direction][offset] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 26, 1, height, 0, 3, + height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 26, 1, height, 0, 3, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 26, 1, height, 0, 3, height + 3); } - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 11); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 11); const auto* stationObj = ride.GetStationObject(); bool hasFence; if (direction == 0 || direction == 2) { - hasFence = track_paint_util_has_fence(EDGE_NW, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NW, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height); } else { - hasFence = track_paint_util_has_fence(EDGE_NE, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height); } if (direction == 0 || direction == 2) { - hasFence = track_paint_util_has_fence(EDGE_SE, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, stationObj, height); } else { - hasFence = track_paint_util_has_fence(EDGE_SW, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, stationObj, height); } @@ -176,7 +176,7 @@ static void multi_dimension_rc_track_station( /** rct2: 0x00792D98 */ static void multi_dimension_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -187,25 +187,25 @@ static void multi_dimension_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15908, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15908, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15909, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15909, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15910, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15910, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15911, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15911, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -214,25 +214,25 @@ static void multi_dimension_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15880, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15880, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15881, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15881, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15882, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15882, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15883, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15883, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -252,47 +252,47 @@ static void multi_dimension_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26253, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26253, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26254, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26254, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26255, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26255, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26256, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26256, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -311,7 +311,7 @@ static void multi_dimension_rc_track_25_deg_up( /** rct2: 0x00792DA8 */ static void multi_dimension_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -320,25 +320,25 @@ static void multi_dimension_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15896, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15896, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15897, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15897, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15898, 0, 0, 32, 1, 98, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15898, 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15899, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15899, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 24, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -357,22 +357,22 @@ static void multi_dimension_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26269, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26269, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26270, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26270, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26271, 0, 0, 32, 2, 81, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26271, 0, 0, 32, 2, 81, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26272, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26272, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 88); break; } @@ -392,7 +392,7 @@ static void multi_dimension_rc_track_60_deg_up( /** rct2: 0x00792DB8 */ static void multi_dimension_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -403,25 +403,25 @@ static void multi_dimension_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15900, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15900, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15901, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15901, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15902, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15902, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15903, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15903, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -430,25 +430,25 @@ static void multi_dimension_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15872, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15872, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15873, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15873, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15874, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15874, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15875, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15875, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -468,47 +468,47 @@ static void multi_dimension_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26245, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26245, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26246, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26246, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26247, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26247, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26248, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26248, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -527,7 +527,7 @@ static void multi_dimension_rc_track_flat_to_25_deg_up( /** rct2: 0x00792DC8 */ static void multi_dimension_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -536,29 +536,29 @@ static void multi_dimension_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15884, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15884, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15885, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15885, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15888, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15888, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15886, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15886, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15889, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15889, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15887, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15887, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -577,28 +577,28 @@ static void multi_dimension_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26257, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26257, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26261, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26261, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26258, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26258, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26262, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26262, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26259, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26259, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26260, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26260, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -618,7 +618,7 @@ static void multi_dimension_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x00792DD8 */ static void multi_dimension_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -627,29 +627,29 @@ static void multi_dimension_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15890, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15890, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15891, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15891, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15894, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15894, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15892, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15892, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15895, 0, 0, 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15895, 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15893, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15893, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -668,53 +668,53 @@ static void multi_dimension_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26263, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26263, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26267, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26267, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26264, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26264, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26268, 0, 0, 32, 10, 49, height + 24, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 26268, 0, 0, 32, 10, 49, height + 24, 0, 10, height + 6); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26265, 0, 0, 32, 2, 49, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26265, 0, 0, 32, 2, 49, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26266, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26266, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 68, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 68, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 68, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 68, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 68, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 68, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 68, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 68, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -733,7 +733,7 @@ static void multi_dimension_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x00792DE8 */ static void multi_dimension_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -744,25 +744,25 @@ static void multi_dimension_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15904, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15904, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15905, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15905, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15906, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15906, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15907, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15907, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -771,25 +771,25 @@ static void multi_dimension_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15876, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15876, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15877, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15877, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15878, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15878, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15879, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15879, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -809,47 +809,47 @@ static void multi_dimension_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26249, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26249, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26250, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26250, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26251, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26251, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26252, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26252, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -868,7 +868,7 @@ static void multi_dimension_rc_track_25_deg_up_to_flat( /** rct2: 0x00792DF8 */ static void multi_dimension_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -876,7 +876,7 @@ static void multi_dimension_rc_track_25_deg_down( /** rct2: 0x00792E08 */ static void multi_dimension_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -884,7 +884,7 @@ static void multi_dimension_rc_track_60_deg_down( /** rct2: 0x00792E18 */ static void multi_dimension_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -892,7 +892,7 @@ static void multi_dimension_rc_track_flat_to_25_deg_down( /** rct2: 0x00792E28 */ static void multi_dimension_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -900,7 +900,7 @@ static void multi_dimension_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x00792E38 */ static void multi_dimension_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -908,7 +908,7 @@ static void multi_dimension_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x00792E48 */ static void multi_dimension_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -916,7 +916,7 @@ static void multi_dimension_rc_track_25_deg_down_to_flat( /** rct2: 0x00792E58 */ static void multi_dimension_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -928,27 +928,27 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15921, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15921, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15926, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15926, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15931, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15931, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15916, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15916, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -964,22 +964,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15920, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15920, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15925, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15925, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15930, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15930, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15915, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15915, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -995,22 +995,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15919, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15919, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15924, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15924, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15929, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15929, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15914, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15914, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1027,22 +1027,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15918, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15918, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15923, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15923, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15928, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15928, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15913, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15913, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1058,27 +1058,27 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15917, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15917, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15922, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15922, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15927, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15927, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15912, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15912, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1104,22 +1104,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26310, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26310, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26315, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26315, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26320, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26320, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26305, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26305, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1129,7 +1129,7 @@ static void multi_dimension_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1145,23 +1145,23 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26309, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26309, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26314, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26314, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26319, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26319, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26304, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26304, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -1176,22 +1176,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26308, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26308, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26313, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26313, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26318, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26318, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26303, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26303, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -1208,23 +1208,23 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26307, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26307, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26312, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26312, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26317, 0, 0, 16, 32, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26317, 0, 0, 16, 32, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26302, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26302, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 22); break; } paint_util_set_segment_support_height( @@ -1239,22 +1239,22 @@ static void multi_dimension_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26306, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26306, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26311, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26311, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26316, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26316, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26301, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26301, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -1264,7 +1264,7 @@ static void multi_dimension_rc_track_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1283,7 +1283,7 @@ static void multi_dimension_rc_track_left_quarter_turn_5( /** rct2: 0x00792E68 */ static void multi_dimension_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1292,7 +1292,7 @@ static void multi_dimension_rc_track_right_quarter_turn_5( /** rct2: 0x00792E78 */ static void multi_dimension_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1301,29 +1301,29 @@ static void multi_dimension_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15832, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15832, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15840, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15840, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15833, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15833, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15841, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15841, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15834, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15834, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15835, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15835, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1335,22 +1335,22 @@ static void multi_dimension_rc_track_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26273, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26273, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26274, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26274, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26275, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26275, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26276, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26276, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1359,10 +1359,10 @@ static void multi_dimension_rc_track_flat_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1372,7 +1372,7 @@ static void multi_dimension_rc_track_flat_to_left_bank( /** rct2: 0x00792E88 */ static void multi_dimension_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1381,29 +1381,29 @@ static void multi_dimension_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15836, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15836, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15837, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15837, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15838, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15838, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15842, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15842, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15839, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15839, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15843, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15843, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1415,22 +1415,22 @@ static void multi_dimension_rc_track_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26277, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26277, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26278, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26278, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26279, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26279, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26280, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26280, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1439,10 +1439,10 @@ static void multi_dimension_rc_track_flat_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1452,7 +1452,7 @@ static void multi_dimension_rc_track_flat_to_right_bank( /** rct2: 0x00792E98 */ static void multi_dimension_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1461,29 +1461,29 @@ static void multi_dimension_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15838, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15838, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15842, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15842, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15839, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15839, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15843, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15843, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15836, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15836, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15837, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15837, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1495,22 +1495,22 @@ static void multi_dimension_rc_track_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26279, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26279, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26280, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26280, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26277, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26277, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26278, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26278, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1519,10 +1519,10 @@ static void multi_dimension_rc_track_left_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1532,7 +1532,7 @@ static void multi_dimension_rc_track_left_bank_to_flat( /** rct2: 0x00792EA8 */ static void multi_dimension_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1541,29 +1541,29 @@ static void multi_dimension_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15834, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15834, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15835, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15835, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15832, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15832, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15840, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15840, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15833, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15833, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15841, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15841, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1575,22 +1575,22 @@ static void multi_dimension_rc_track_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26275, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26275, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26276, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26276, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26273, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26273, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26274, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26274, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -1599,10 +1599,10 @@ static void multi_dimension_rc_track_right_bank_to_flat( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1612,7 +1612,7 @@ static void multi_dimension_rc_track_right_bank_to_flat( /** rct2: 0x00792EB8 */ static void multi_dimension_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1624,30 +1624,30 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15941, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15941, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15952, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 15952, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15946, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 15946, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15951, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15951, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15936, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15936, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1663,22 +1663,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15940, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15940, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15945, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15945, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15950, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15950, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15935, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15935, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1694,22 +1694,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15939, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15939, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15944, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15944, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15949, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15949, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15934, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15934, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1726,22 +1726,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15938, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15938, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15943, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15943, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15948, 0, 0, 16, 32, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15948, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15933, 0, 0, 16, 32, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15933, 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1757,30 +1757,30 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15937, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15937, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15942, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15942, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15947, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15947, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15953, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15953, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15932, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15932, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1806,22 +1806,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26354, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26354, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26359, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26359, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26364, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26364, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26349, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26349, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -1831,7 +1831,7 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1847,21 +1847,21 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26353, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26353, 0, 0, 32, 16, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26358, 0, 0, 32, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26358, 0, 0, 32, 16, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26363, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26363, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26348, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26348, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 24); break; } paint_util_set_segment_support_height( @@ -1876,22 +1876,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26352, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26352, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26357, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26357, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26362, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26362, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26347, 0, 0, 16, 16, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26347, 0, 0, 16, 16, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -1907,21 +1907,21 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26351, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26351, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26356, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26356, 0, 0, 16, 32, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26361, 0, 0, 16, 32, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26361, 0, 0, 16, 32, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26346, 0, 0, 16, 32, 3, height + 24, 16, - 0, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26346, 0, 0, 16, 32, 3, height + 24, 16, 0, + height + 24); break; } paint_util_set_segment_support_height( @@ -1936,22 +1936,22 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26350, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26350, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26355, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26355, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26360, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26360, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26345, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26345, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 24); break; } @@ -1961,7 +1961,7 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1980,7 +1980,7 @@ static void multi_dimension_rc_track_banked_left_quarter_turn_5( /** rct2: 0x00792EC8 */ static void multi_dimension_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1990,7 +1990,7 @@ static void multi_dimension_rc_track_banked_right_quarter_turn_5( /** rct2: 0x00792ED8 */ static void multi_dimension_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -1999,29 +1999,29 @@ static void multi_dimension_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15844, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15844, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15848, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15848, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15845, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15845, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15849, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15849, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15846, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15846, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15847, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15847, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2040,22 +2040,22 @@ static void multi_dimension_rc_track_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26281, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26281, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26282, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26282, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26283, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26283, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26284, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26284, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2064,25 +2064,25 @@ static void multi_dimension_rc_track_left_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2101,7 +2101,7 @@ static void multi_dimension_rc_track_left_bank_to_25_deg_up( /** rct2: 0x00792EE8 */ static void multi_dimension_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2110,29 +2110,29 @@ static void multi_dimension_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15850, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15850, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15851, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15851, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15852, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15852, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15854, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15854, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15853, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15853, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15855, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15855, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2151,22 +2151,22 @@ static void multi_dimension_rc_track_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26285, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26285, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26286, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26286, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26287, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26287, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26288, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26288, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2175,25 +2175,25 @@ static void multi_dimension_rc_track_right_bank_to_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2212,7 +2212,7 @@ static void multi_dimension_rc_track_right_bank_to_25_deg_up( /** rct2: 0x00792EF8 */ static void multi_dimension_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2221,29 +2221,29 @@ static void multi_dimension_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15856, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15856, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15860, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15860, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15857, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15857, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15861, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15861, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15858, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15858, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15859, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15859, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2262,22 +2262,22 @@ static void multi_dimension_rc_track_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26289, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26289, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26290, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26290, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26291, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26291, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26292, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26292, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2286,25 +2286,25 @@ static void multi_dimension_rc_track_25_deg_up_to_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2323,7 +2323,7 @@ static void multi_dimension_rc_track_25_deg_up_to_left_bank( /** rct2: 0x00792F08 */ static void multi_dimension_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2332,29 +2332,29 @@ static void multi_dimension_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15862, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15862, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15863, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15863, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15864, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15864, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15866, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15866, 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15865, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15865, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15867, 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15867, 0, 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2373,22 +2373,22 @@ static void multi_dimension_rc_track_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26293, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26293, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26294, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26294, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26295, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26295, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26296, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26296, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 32); break; } @@ -2397,25 +2397,25 @@ static void multi_dimension_rc_track_25_deg_up_to_right_bank( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2434,7 +2434,7 @@ static void multi_dimension_rc_track_25_deg_up_to_right_bank( /** rct2: 0x00792F18 */ static void multi_dimension_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2442,7 +2442,7 @@ static void multi_dimension_rc_track_left_bank_to_25_deg_down( /** rct2: 0x00792F28 */ static void multi_dimension_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2450,7 +2450,7 @@ static void multi_dimension_rc_track_right_bank_to_25_deg_down( /** rct2: 0x00792F38 */ static void multi_dimension_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2458,7 +2458,7 @@ static void multi_dimension_rc_track_25_deg_down_to_left_bank( /** rct2: 0x00792F48 */ static void multi_dimension_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2466,7 +2466,7 @@ static void multi_dimension_rc_track_25_deg_down_to_right_bank( /** rct2: 0x00792F58 */ static void multi_dimension_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2475,25 +2475,25 @@ static void multi_dimension_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15868, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15868, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15869, 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15869, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15870, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15870, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15871, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15871, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2505,22 +2505,22 @@ static void multi_dimension_rc_track_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26297, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26297, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26298, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26298, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26299, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26299, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26300, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26300, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -2529,10 +2529,10 @@ static void multi_dimension_rc_track_left_bank( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2542,7 +2542,7 @@ static void multi_dimension_rc_track_left_bank( /** rct2: 0x00792F68 */ static void multi_dimension_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2550,7 +2550,7 @@ static void multi_dimension_rc_track_right_bank( /** rct2: 0x00792F78 */ static void multi_dimension_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2562,27 +2562,27 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15816, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15816, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15820, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15820, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15819, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15819, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15823, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15823, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2595,24 +2595,24 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15817, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15817, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15821, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15821, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15818, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15818, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15822, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15822, 0, 0, 32, 26, 3, height, 0, 6, height); break; } @@ -2624,25 +2624,25 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15818, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15818, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15822, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15822, 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15817, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15817, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15821, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15821, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2653,27 +2653,27 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15819, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15819, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15823, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15823, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15816, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15816, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15820, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15820, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2697,22 +2697,22 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26229, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26229, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26233, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26233, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26232, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26232, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26236, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26236, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -2721,7 +2721,7 @@ static void multi_dimension_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2734,22 +2734,22 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26230, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26230, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26234, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26234, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26231, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26231, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26235, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26235, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -2763,11 +2763,11 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2778,22 +2778,22 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26231, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26231, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26235, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26235, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26230, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26230, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26234, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26234, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -2807,11 +2807,11 @@ static void multi_dimension_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2822,22 +2822,22 @@ static void multi_dimension_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26232, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26232, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26236, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26236, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26229, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26229, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26233, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26233, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -2846,7 +2846,7 @@ static void multi_dimension_rc_track_s_bend_left( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2865,7 +2865,7 @@ static void multi_dimension_rc_track_s_bend_left( /** rct2: 0x00792F88 */ static void multi_dimension_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -2877,27 +2877,27 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15824, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15824, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15828, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15828, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15827, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15827, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15831, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15831, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -2910,25 +2910,25 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15825, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15825, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15829, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15829, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15826, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15826, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15830, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15830, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2939,25 +2939,25 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15826, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15826, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15830, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 15830, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15825, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15825, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15829, 0, 0, 32, 26, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15829, 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2968,27 +2968,27 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15827, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15827, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15831, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15831, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15824, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15824, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15828, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15828, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3012,22 +3012,22 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26237, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26237, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26241, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26241, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26240, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26240, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26244, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26244, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3036,7 +3036,7 @@ static void multi_dimension_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3049,22 +3049,22 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26238, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26238, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26242, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26242, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26239, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26239, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26243, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26243, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; } @@ -3078,11 +3078,11 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3093,22 +3093,22 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26239, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26239, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26243, 0, 0, 32, 26, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26243, 0, 0, 32, 26, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26238, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26238, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26242, 0, 0, 32, 26, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26242, 0, 0, 32, 26, 3, height + 24, 0, 6, height + 22); break; } @@ -3122,11 +3122,11 @@ static void multi_dimension_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3137,22 +3137,22 @@ static void multi_dimension_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26240, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26240, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26244, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26244, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26237, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26237, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26241, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26241, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3161,7 +3161,7 @@ static void multi_dimension_rc_track_s_bend_right( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3180,7 +3180,7 @@ static void multi_dimension_rc_track_s_bend_right( /** rct2: 0x00792FC8 */ static void multi_dimension_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3192,27 +3192,27 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15959, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15959, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15962, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15962, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15965, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15965, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15956, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15956, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3228,22 +3228,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15958, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15958, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15961, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15961, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15964, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15964, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15955, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15955, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3257,27 +3257,27 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15957, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15957, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15960, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15960, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15963, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15963, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15954, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15954, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3303,22 +3303,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26326, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26326, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26329, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26329, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26332, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26332, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26323, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26323, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3328,7 +3328,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3344,22 +3344,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26325, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26325, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26328, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26328, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26331, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26331, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26322, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26322, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -3373,22 +3373,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26324, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26324, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26327, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26327, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26330, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26330, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26321, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26321, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -3398,7 +3398,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3417,7 +3417,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3( /** rct2: 0x00792FD8 */ static void multi_dimension_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3426,7 +3426,7 @@ static void multi_dimension_rc_track_right_quarter_turn_3( /** rct2: 0x00792FE8 */ static void multi_dimension_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -3438,30 +3438,30 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15971, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15971, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15978, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 15978, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15974, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 15974, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15977, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15977, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15968, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15968, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3477,22 +3477,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15970, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15970, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15973, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15973, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15976, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15976, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15967, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15967, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3506,30 +3506,30 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15969, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15969, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15972, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15972, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15975, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15975, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15979, 0, 0, 1, 32, 26, height, 27, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15979, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15966, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15966, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3555,22 +3555,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26338, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26338, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26341, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26341, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26344, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26344, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26335, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26335, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -3580,7 +3580,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -3596,22 +3596,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26337, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26337, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26340, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26340, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26343, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26343, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26334, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26334, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -3625,22 +3625,22 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26336, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26336, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26339, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26339, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26342, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26342, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26333, 0, 0, 20, 32, 3, height + 24, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26333, 0, 0, 20, 32, 3, height + 24, 6, 0, height + 22); break; } @@ -3650,7 +3650,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3669,7 +3669,7 @@ static void multi_dimension_rc_track_left_quarter_turn_3_bank( /** rct2: 0x00792FF8 */ static void multi_dimension_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3678,7 +3678,7 @@ static void multi_dimension_rc_track_right_quarter_turn_3_bank( /** rct2: 0x00793008 */ static void multi_dimension_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3688,27 +3688,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16197, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16197, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16204, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16204, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16200, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16200, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16203, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16203, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16194, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16194, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3724,22 +3722,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16196, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16196, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16199, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16199, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16202, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16202, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16193, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16193, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3752,27 +3748,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16195, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16195, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16198, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16198, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16201, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16201, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16205, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16205, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16192, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16192, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3792,27 +3786,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16194, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16194, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16197, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16197, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16204, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16204, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16200, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16200, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16203, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16203, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3833,23 +3825,21 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16193, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16193, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16196, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16196, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16199, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16199, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16202, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16202, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3861,27 +3851,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16192, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16192, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16195, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16195, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16198, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16198, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16201, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16201, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16205, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16205, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -3894,7 +3882,7 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_small( /** rct2: 0x00793018 */ static void multi_dimension_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3904,27 +3892,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16178, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16178, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16181, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16181, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16184, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16184, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16187, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16187, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16191, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16191, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -3940,23 +3926,21 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16179, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16179, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16182, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16182, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16185, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16185, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16188, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16188, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3968,27 +3952,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16180, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16180, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16183, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16183, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16190, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16190, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16186, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16186, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16189, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16189, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4006,27 +3988,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16181, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16181, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16184, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16184, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16187, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16187, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16191, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16191, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16178, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16178, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4049,22 +4029,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16182, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16182, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16185, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16185, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16188, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16188, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16179, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16179, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -4077,27 +4055,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16183, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16183, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16190, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16190, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16186, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16186, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16189, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16189, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16180, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16180, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -4110,7 +4086,7 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_small( /** rct2: 0x00793028 */ static void multi_dimension_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -4125,7 +4101,7 @@ static void multi_dimension_rc_track_left_half_banked_helix_down_small( /** rct2: 0x00793038 */ static void multi_dimension_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -4140,7 +4116,7 @@ static void multi_dimension_rc_track_right_half_banked_helix_down_small( /** rct2: 0x00793048 */ static void multi_dimension_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4150,27 +4126,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16165, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16165, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16176, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16176, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16170, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16170, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16175, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16175, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16160, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16160, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4186,22 +4160,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16164, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16164, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16169, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16169, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16174, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16174, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16159, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16159, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4216,22 +4188,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16163, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16163, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16168, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16168, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16173, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16173, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16158, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16158, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4246,22 +4216,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16162, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16162, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16167, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16167, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16172, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16172, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16157, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16157, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4276,27 +4244,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16161, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16161, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16166, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16166, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16171, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16171, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16177, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16177, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16156, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16156, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4316,27 +4282,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16160, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16160, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16165, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16165, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16176, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16176, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16170, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16170, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16175, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16175, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4357,22 +4321,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16159, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16159, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16164, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16164, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16169, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16169, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16174, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16174, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4387,22 +4349,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16158, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16158, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16163, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16163, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16168, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16168, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16173, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16173, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4417,22 +4377,20 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16157, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16157, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16162, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16162, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16167, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16167, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16172, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16172, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4447,27 +4405,25 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16156, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16156, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16161, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16161, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16166, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16166, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16171, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16171, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16177, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16177, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -4480,7 +4436,7 @@ static void multi_dimension_rc_track_left_half_banked_helix_up_large( /** rct2: 0x00793058 */ static void multi_dimension_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4490,27 +4446,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16134, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16134, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16139, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16139, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16144, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16144, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16149, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16149, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16155, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16155, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4526,22 +4480,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16135, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16135, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16140, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16140, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16145, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16145, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16150, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16150, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4556,22 +4508,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16136, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16136, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16141, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16141, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16146, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16146, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16151, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16151, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4586,22 +4536,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16137, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16137, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16142, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16142, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16147, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16147, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16152, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16152, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4616,27 +4564,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16138, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16138, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16143, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16143, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16154, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16154, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16148, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16148, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16153, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16153, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4654,27 +4600,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16139, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16139, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16144, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16144, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16149, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16149, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16155, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16155, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16134, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16134, 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4697,22 +4641,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16140, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16140, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16145, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16145, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16150, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16150, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16135, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16135, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4727,22 +4669,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16141, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16141, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16146, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16146, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16151, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16151, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16136, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16136, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4757,22 +4697,20 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16142, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16142, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16147, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16147, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16152, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16152, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16137, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16137, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4787,27 +4725,25 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16143, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16143, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16154, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16154, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16148, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16148, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16153, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16153, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16138, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16138, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_SQUARE_FLAT); @@ -4820,7 +4756,7 @@ static void multi_dimension_rc_track_right_half_banked_helix_up_large( /** rct2: 0x00793068 */ static void multi_dimension_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4835,7 +4771,7 @@ static void multi_dimension_rc_track_left_half_banked_helix_down_large( /** rct2: 0x00793078 */ static void multi_dimension_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4850,7 +4786,7 @@ static void multi_dimension_rc_track_right_half_banked_helix_down_large( /** rct2: 0x00793088 */ static void multi_dimension_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4860,18 +4796,18 @@ static void multi_dimension_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16218, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16218, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16219, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 16219, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -4884,23 +4820,23 @@ static void multi_dimension_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26549, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26549, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26550, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26550, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -4910,7 +4846,7 @@ static void multi_dimension_rc_track_brakes( /** rct2: 0x00793098 */ static void multi_dimension_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -4921,41 +4857,41 @@ static void multi_dimension_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15806, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 0, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 15807, 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4971,44 +4907,44 @@ static void multi_dimension_rc_track_on_ride_photo( PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26227, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26228, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); break; } @@ -5021,7 +4957,7 @@ static void multi_dimension_rc_track_on_ride_photo( /** rct2: 0x00793328 */ static void multi_dimension_rc_track_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5033,22 +4969,22 @@ static void multi_dimension_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16130, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16130, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16131, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16131, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16132, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16132, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16133, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16133, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -5070,22 +5006,22 @@ static void multi_dimension_rc_track_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26533, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26533, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26534, 0, 0, 32, 2, 31, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26534, 0, 0, 32, 2, 31, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26535, 0, 0, 32, 2, 31, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26535, 0, 0, 32, 2, 31, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26536, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26536, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 56); break; } @@ -5102,7 +5038,7 @@ static void multi_dimension_rc_track_90_deg_up( /** rct2: 0x00793338 */ static void multi_dimension_rc_track_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5110,7 +5046,7 @@ static void multi_dimension_rc_track_90_deg_down( /** rct2: 0x00793348 */ static void multi_dimension_rc_track_60_deg_up_to_90_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5122,22 +5058,22 @@ static void multi_dimension_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16122, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16122, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16123, 0, 0, 2, 20, 55, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16123, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16124, 0, 0, 2, 20, 55, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16124, 0, 0, 2, 20, 55, height, 24, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16125, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16125, 0, 0, 32, 20, 3, height, 0, 6, height); break; } @@ -5163,22 +5099,22 @@ static void multi_dimension_rc_track_60_deg_up_to_90_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26525, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26525, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26526, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26526, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26527, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26527, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26528, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26528, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; } @@ -5199,7 +5135,7 @@ static void multi_dimension_rc_track_60_deg_up_to_90_deg_up( /** rct2: 0x00793358 */ static void multi_dimension_rc_track_90_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { multi_dimension_rc_track_60_deg_up_to_90_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -5207,7 +5143,7 @@ static void multi_dimension_rc_track_90_deg_down_to_60_deg_down( /** rct2: 0x00793368 */ static void multi_dimension_rc_track_90_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5216,21 +5152,19 @@ static void multi_dimension_rc_track_90_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16126, 0, 0, 6, 20, 3, height, 0, 6, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 16126, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16127, 0, 0, 2, 20, 31, height, 39, 6, - height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 16127, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16128, 0, 0, 2, 20, 31, height, 39, 6, - height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 16128, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16129, 0, 0, 6, 20, 3, height, 0, 6, height + 2); + session, direction, session.TrackColours[SCHEME_TRACK] | 16129, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; } switch (direction) @@ -5252,22 +5186,22 @@ static void multi_dimension_rc_track_90_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26529, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26529, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26530, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26530, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26531, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26531, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26532, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26532, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; } @@ -5288,7 +5222,7 @@ static void multi_dimension_rc_track_90_deg_up_to_60_deg_up( /** rct2: 0x00793378 */ static void multi_dimension_rc_track_60_deg_down_to_90_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5300,22 +5234,22 @@ static void multi_dimension_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16128, 0, 0, 2, 20, 31, height, 39, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16128, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16129, 0, 0, 6, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16129, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16126, 0, 0, 6, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16126, 0, 0, 6, 20, 3, height, 0, 6, height + 2); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16127, 0, 0, 2, 20, 31, height, 39, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16127, 0, 0, 2, 20, 31, height, 39, 6, height + 8); break; } @@ -5340,22 +5274,22 @@ static void multi_dimension_rc_track_60_deg_down_to_90_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26531, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26531, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26532, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26532, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26529, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26529, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 80); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26530, 0, 0, 32, 2, 55, height + 24, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26530, 0, 0, 32, 2, 55, height + 24, 0, 4, height + 6); break; } @@ -5375,7 +5309,7 @@ static void multi_dimension_rc_track_60_deg_down_to_90_deg_down( /** rct2: 0x007930B8 */ static void multi_dimension_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5387,27 +5321,27 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15996, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15996, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16000, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16000, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16004, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16004, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16008, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16008, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5420,22 +5354,22 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15997, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15997, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16001, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16001, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16005, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16005, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16009, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16009, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -5447,22 +5381,22 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15998, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15998, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16002, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16002, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16006, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16006, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16010, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16010, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -5483,31 +5417,31 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15999, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15999, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16003, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16003, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16007, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16007, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16011, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16011, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5524,22 +5458,22 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26405, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26405, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26409, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26409, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26413, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26413, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26417, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26417, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -5547,7 +5481,7 @@ static void multi_dimension_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5560,23 +5494,23 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26406, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26406, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26410, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26410, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26414, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26414, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26418, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26418, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -5591,22 +5525,22 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26407, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26407, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26411, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26411, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26415, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26415, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26419, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26419, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -5627,23 +5561,23 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26408, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26408, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26412, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26412, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26416, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26416, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26420, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26420, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -5656,19 +5590,19 @@ static void multi_dimension_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5680,7 +5614,7 @@ static void multi_dimension_rc_track_left_eighth_to_diag( /** rct2: 0x007930C8 */ static void multi_dimension_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -5692,27 +5626,27 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15980, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15980, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15984, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15984, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15988, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15988, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15992, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 15992, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -5725,22 +5659,22 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15981, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15981, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15985, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15985, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15989, 0, 0, 34, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15989, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15993, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15993, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -5752,22 +5686,22 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15982, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15982, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15986, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15986, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15990, 0, 0, 28, 28, 3, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 15990, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15994, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15994, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -5788,31 +5722,31 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15983, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15983, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15987, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 15987, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15991, 0, 0, 16, 18, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15991, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 15995, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 15995, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -5829,22 +5763,22 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26389, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26389, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26393, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26393, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26397, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26397, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26401, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26401, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -5852,7 +5786,7 @@ static void multi_dimension_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -5865,22 +5799,22 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26390, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26390, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26394, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26394, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26398, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26398, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26402, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26402, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -5896,23 +5830,23 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26391, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26391, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26395, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26395, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26399, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26399, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26403, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26403, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -5932,22 +5866,22 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26392, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26392, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26396, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26396, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26400, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26400, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26404, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26404, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -5961,19 +5895,19 @@ static void multi_dimension_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -5985,7 +5919,7 @@ static void multi_dimension_rc_track_right_eighth_to_diag( /** rct2: 0x007930D8 */ static void multi_dimension_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5994,7 +5928,7 @@ static void multi_dimension_rc_track_left_eighth_to_orthogonal( /** rct2: 0x007930E8 */ static void multi_dimension_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -6003,7 +5937,7 @@ static void multi_dimension_rc_track_right_eighth_to_orthogonal( /** rct2: 0x007930F8 */ static void multi_dimension_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6015,27 +5949,27 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16028, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16028, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16032, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16032, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16036, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16036, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16040, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16040, 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6048,22 +5982,22 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16029, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16029, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16033, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16033, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16037, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16037, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16041, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16041, 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -6075,22 +6009,22 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16030, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16030, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16034, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16034, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16038, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16038, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16042, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16042, 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -6111,31 +6045,31 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16031, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16031, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16035, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16035, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16039, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16039, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16043, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16043, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6152,22 +6086,22 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26437, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26437, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26441, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26441, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26445, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26445, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26449, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26449, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -6176,7 +6110,7 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6189,23 +6123,23 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26438, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26438, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26442, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26442, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26446, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26446, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26450, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26450, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -6220,22 +6154,22 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26439, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26439, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26443, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26443, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26447, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26447, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26451, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26451, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -6256,23 +6190,23 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26440, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26440, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26444, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26444, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26448, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26448, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26452, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26452, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; } @@ -6285,19 +6219,19 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6309,7 +6243,7 @@ static void multi_dimension_rc_track_left_eighth_bank_to_diag( /** rct2: 0x00793108 */ static void multi_dimension_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6321,27 +6255,27 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16012, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16012, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16016, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16016, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16020, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16020, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16024, 0, 0, 32, 1, 26, height, 0, 27, + session, direction, session.TrackColours[SCHEME_TRACK] | 16024, 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -6354,22 +6288,22 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16013, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16013, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16017, 0, 0, 32, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16017, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16021, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16021, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16025, 0, 0, 32, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16025, 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -6381,22 +6315,22 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16014, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16014, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16018, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16018, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16022, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 16022, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16026, 0, 0, 16, 16, 3, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16026, 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -6417,31 +6351,31 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16015, 0, 0, 16, 16, 3, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16015, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16019, 0, 0, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16019, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16023, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16023, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16027, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16027, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6458,22 +6392,22 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26421, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26421, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26425, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26425, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26429, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26429, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26433, 0, 0, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26433, 0, 0, 32, 20, 3, height + 24, 0, 6, height + 22); break; } @@ -6482,7 +6416,7 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -6495,22 +6429,22 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26422, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26422, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26426, 0, 0, 32, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26426, 0, 0, 32, 16, 3, height + 24, 0, 16, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26430, 0, 0, 34, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26430, 0, 0, 34, 16, 3, height + 24, 0, 0, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26434, 0, 0, 32, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26434, 0, 0, 32, 16, 3, height + 24, 0, 0, height + 22); break; } @@ -6526,23 +6460,23 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26423, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26423, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26427, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26427, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26431, 0, 0, 28, 28, 3, height + 24, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26431, 0, 0, 28, 28, 3, height + 24, 4, 4, height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26435, 0, 0, 16, 16, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26435, 0, 0, 16, 16, 3, height + 24, 0, 16, + height + 22); break; } paint_util_set_segment_support_height( @@ -6562,22 +6496,22 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26424, 0, 0, 16, 16, 3, height + 24, 16, - 0, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26424, 0, 0, 16, 16, 3, height + 24, 16, 0, + height + 22); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26428, 0, 0, 16, 16, 3, height + 24, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26428, 0, 0, 16, 16, 3, height + 24, 0, 0, height + 22); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26432, 0, 0, 16, 18, 3, height + 24, 0, - 16, height + 22); + session, direction, session.TrackColours[SCHEME_TRACK] | 26432, 0, 0, 16, 18, 3, height + 24, 0, 16, + height + 22); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26436, 0, 0, 16, 16, 3, height + 24, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26436, 0, 0, 16, 16, 3, height + 24, 16, 16, height + 22); break; } @@ -6591,19 +6525,19 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6615,7 +6549,7 @@ static void multi_dimension_rc_track_right_eighth_bank_to_diag( /** rct2: 0x00793118 */ static void multi_dimension_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -6624,7 +6558,7 @@ static void multi_dimension_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x00793128 */ static void multi_dimension_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -6633,7 +6567,7 @@ static void multi_dimension_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x007930A8 */ static void multi_dimension_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6647,7 +6581,7 @@ static void multi_dimension_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16109, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16109, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6658,7 +6592,7 @@ static void multi_dimension_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16047, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16047, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6675,7 +6609,7 @@ static void multi_dimension_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16106, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16106, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6686,7 +6620,7 @@ static void multi_dimension_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16044, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16044, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6703,7 +6637,7 @@ static void multi_dimension_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16108, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16108, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6714,7 +6648,7 @@ static void multi_dimension_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16046, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16046, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6731,22 +6665,22 @@ static void multi_dimension_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16107, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16107, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6756,22 +6690,22 @@ static void multi_dimension_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16045, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16045, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6793,7 +6727,7 @@ static void multi_dimension_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26484, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26484, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6804,7 +6738,7 @@ static void multi_dimension_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26456, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26456, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6821,7 +6755,7 @@ static void multi_dimension_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26481, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26481, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6832,7 +6766,7 @@ static void multi_dimension_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26453, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26453, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6849,7 +6783,7 @@ static void multi_dimension_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26483, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26483, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6860,7 +6794,7 @@ static void multi_dimension_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26455, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26455, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6877,7 +6811,7 @@ static void multi_dimension_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26482, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26482, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6888,7 +6822,7 @@ static void multi_dimension_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26454, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26454, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -6901,19 +6835,19 @@ static void multi_dimension_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -6925,7 +6859,7 @@ static void multi_dimension_rc_track_diag_flat( /** rct2: 0x00793158 */ static void multi_dimension_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -6939,7 +6873,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16121, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16121, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6950,7 +6884,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16059, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16059, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6967,7 +6901,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16118, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16118, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6978,7 +6912,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16056, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16056, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6995,7 +6929,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16120, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16120, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7006,7 +6940,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16058, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16058, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7023,22 +6957,22 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16119, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16119, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7048,22 +6982,22 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16057, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16057, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7085,7 +7019,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26496, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26496, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7096,7 +7030,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26468, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26468, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7113,7 +7047,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26493, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26493, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7124,7 +7058,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26465, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26465, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7141,7 +7075,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26495, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26495, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7152,7 +7086,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26467, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26467, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7169,7 +7103,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26494, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26494, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7180,7 +7114,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26466, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26466, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -7193,19 +7127,19 @@ static void multi_dimension_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7217,7 +7151,7 @@ static void multi_dimension_rc_track_diag_25_deg_up( /** rct2: 0x007931B8 */ static void multi_dimension_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7229,7 +7163,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16071, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16071, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7243,7 +7177,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16068, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16068, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7257,7 +7191,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16070, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16070, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7271,22 +7205,22 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16069, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16069, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7305,7 +7239,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26480, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26480, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -7319,7 +7253,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26477, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26477, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -7333,7 +7267,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26479, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26479, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -7347,7 +7281,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26478, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26478, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -7359,19 +7293,19 @@ static void multi_dimension_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 32, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 36, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 32, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 36, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7383,7 +7317,7 @@ static void multi_dimension_rc_track_diag_60_deg_up( /** rct2: 0x00793138 */ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7397,7 +7331,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16113, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16113, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7408,7 +7342,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16051, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16051, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7425,7 +7359,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16110, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16110, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7436,7 +7370,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16048, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16048, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7453,7 +7387,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16112, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16112, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7464,7 +7398,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16050, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16050, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7481,22 +7415,22 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16111, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16111, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7506,22 +7440,22 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16049, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16049, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7543,7 +7477,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26488, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26488, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7554,7 +7488,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26460, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26460, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7571,7 +7505,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26485, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26485, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7582,7 +7516,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26457, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26457, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7599,7 +7533,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26487, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26487, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7610,7 +7544,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26459, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26459, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7627,7 +7561,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26486, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26486, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7638,7 +7572,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26458, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26458, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -7651,19 +7585,19 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7675,7 +7609,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x00793198 */ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7687,7 +7621,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16063, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16063, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7701,7 +7635,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16060, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16060, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7715,7 +7649,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16062, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16062, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7729,22 +7663,22 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16061, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16061, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7763,7 +7697,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26472, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26472, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7777,7 +7711,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26469, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26469, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7791,7 +7725,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26471, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26471, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7805,7 +7739,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26470, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26470, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7817,19 +7751,19 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 16, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 16, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 16, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 16, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -7841,7 +7775,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x007931A8 */ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -7853,7 +7787,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16067, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16067, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7867,7 +7801,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16064, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16064, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7881,7 +7815,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16066, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16066, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7895,22 +7829,22 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16065, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16065, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7929,7 +7863,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26476, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26476, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7943,7 +7877,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26473, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26473, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7957,7 +7891,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26475, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26475, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -7971,8 +7905,8 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26474, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 26474, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } @@ -7983,19 +7917,19 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 21, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 21, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 21, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 21, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8007,7 +7941,7 @@ static void multi_dimension_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x00793148 */ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8021,7 +7955,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16117, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16117, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8032,7 +7966,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16055, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16055, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8049,7 +7983,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16114, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16114, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8060,7 +7994,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16052, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16052, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8077,7 +8011,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16116, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16116, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8088,7 +8022,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16054, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16054, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8105,22 +8039,22 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16115, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16115, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8130,22 +8064,22 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16053, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16053, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8167,7 +8101,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26492, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26492, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8178,7 +8112,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26464, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26464, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8195,7 +8129,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26489, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26489, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8206,7 +8140,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26461, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26461, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8223,7 +8157,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26491, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26491, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8234,7 +8168,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26463, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26463, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8251,7 +8185,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26490, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26490, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8262,7 +8196,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26462, -16, -16, 32, 32, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | 26462, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8275,19 +8209,19 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8299,7 +8233,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x00793188 */ static void multi_dimension_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8313,7 +8247,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16119, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16119, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8324,7 +8258,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16057, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16057, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8341,7 +8275,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16120, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16120, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8352,7 +8286,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16058, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16058, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8369,7 +8303,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16118, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16118, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8380,7 +8314,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16056, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16056, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8397,22 +8331,22 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16121, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16121, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8422,22 +8356,22 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16059, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16059, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8457,7 +8391,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26466, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26466, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8471,7 +8405,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26467, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26467, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8485,7 +8419,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26465, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26465, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8499,7 +8433,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26468, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26468, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 40); break; } @@ -8511,19 +8445,19 @@ static void multi_dimension_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8535,7 +8469,7 @@ static void multi_dimension_rc_track_diag_25_deg_down( /** rct2: 0x007931E8 */ static void multi_dimension_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8547,7 +8481,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16069, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16069, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8561,7 +8495,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16070, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16070, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8575,7 +8509,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16068, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16068, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8589,22 +8523,22 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16071, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16071, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8623,7 +8557,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26478, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26478, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 24); break; } @@ -8637,7 +8571,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26479, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26479, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -8651,7 +8585,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26477, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26477, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -8665,7 +8599,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26480, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26480, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 88); break; } @@ -8677,19 +8611,19 @@ static void multi_dimension_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 24, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 28, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 24, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 28, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -8701,7 +8635,7 @@ static void multi_dimension_rc_track_diag_60_deg_down( /** rct2: 0x00793168 */ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8715,7 +8649,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16115, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16115, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8726,7 +8660,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16053, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16053, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8742,7 +8676,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16116, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16116, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8753,7 +8687,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16054, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16054, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8769,7 +8703,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16114, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16114, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8780,7 +8714,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16052, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16052, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8796,22 +8730,22 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16117, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16117, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8821,22 +8755,22 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16055, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16055, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8855,7 +8789,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26462, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26462, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8869,7 +8803,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26463, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26463, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8883,7 +8817,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26461, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26461, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8897,7 +8831,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26464, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26464, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -8909,19 +8843,19 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -8933,7 +8867,7 @@ static void multi_dimension_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x007931C8 */ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -8945,7 +8879,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16065, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 16065, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -8959,7 +8893,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16066, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16066, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8973,7 +8907,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16064, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16064, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8987,22 +8921,22 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16067, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16067, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9021,8 +8955,8 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26474, -16, -16, 16, 16, 3, height + 24, - 0, 0, height + 56); + session, direction, session.TrackColours[SCHEME_TRACK] | 26474, -16, -16, 16, 16, 3, height + 24, 0, + 0, height + 56); break; } paint_util_set_segment_support_height( @@ -9035,7 +8969,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26475, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26475, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9049,7 +8983,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26473, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26473, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9063,7 +8997,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26476, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26476, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9075,19 +9009,19 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 17, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 17, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 17, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 17, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9099,7 +9033,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x007931D8 */ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9111,7 +9045,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16061, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16061, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9125,7 +9059,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16062, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16062, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9139,7 +9073,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16060, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16060, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9153,22 +9087,22 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16063, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16063, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9187,7 +9121,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26470, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26470, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9201,7 +9135,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26471, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26471, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9215,7 +9149,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26469, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26469, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9229,7 +9163,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26472, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26472, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 56); break; } @@ -9241,19 +9175,19 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 8, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 8, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 8, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 8, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9265,7 +9199,7 @@ static void multi_dimension_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x00793178 */ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9279,7 +9213,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16111, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16111, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9290,7 +9224,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16049, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16049, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9307,7 +9241,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16112, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16112, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9318,7 +9252,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16050, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16050, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9335,7 +9269,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16110, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16110, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9346,7 +9280,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16048, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16048, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9363,22 +9297,22 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16113, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16113, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9388,22 +9322,22 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16051, -16, -16, 32, 32, 3, height, + session, direction, session.TrackColours[SCHEME_TRACK] | 16051, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9423,7 +9357,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26458, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26458, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9437,7 +9371,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26459, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26459, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9451,7 +9385,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26457, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26457, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9465,7 +9399,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26460, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26460, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -9477,19 +9411,19 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9501,7 +9435,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x00793218 */ static void multi_dimension_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9513,7 +9447,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16079, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16079, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9527,10 +9461,10 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16076, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16076, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16080, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16080, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -9544,7 +9478,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16078, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16078, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9558,22 +9492,22 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16077, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16077, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9592,7 +9526,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26504, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26504, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9606,7 +9540,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26501, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26501, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9620,7 +9554,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26503, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26503, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9634,7 +9568,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26502, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26502, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9647,19 +9581,19 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9671,7 +9605,7 @@ static void multi_dimension_rc_track_diag_flat_to_left_bank( /** rct2: 0x00793228 */ static void multi_dimension_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9683,7 +9617,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16084, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16084, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9697,7 +9631,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16081, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16081, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9711,10 +9645,10 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16083, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16083, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16085, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16085, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -9728,22 +9662,22 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16082, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16082, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9762,7 +9696,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26508, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26508, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9776,7 +9710,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26505, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26505, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9790,7 +9724,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26507, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26507, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9804,7 +9738,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26506, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26506, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9817,19 +9751,19 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -9841,7 +9775,7 @@ static void multi_dimension_rc_track_diag_flat_to_right_bank( /** rct2: 0x00793238 */ static void multi_dimension_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -9853,7 +9787,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16082, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16082, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9867,10 +9801,10 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16083, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16083, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16085, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16085, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -9884,7 +9818,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16081, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16081, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -9898,22 +9832,22 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16084, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16084, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -9932,7 +9866,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26506, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26506, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9946,7 +9880,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26507, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26507, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9960,7 +9894,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26505, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26505, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9974,7 +9908,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26508, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26508, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -9987,19 +9921,19 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10011,7 +9945,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_flat( /** rct2: 0x00793248 */ static void multi_dimension_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10023,7 +9957,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16077, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16077, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10037,7 +9971,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16078, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16078, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10051,10 +9985,10 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16076, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16076, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16080, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16080, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -10068,22 +10002,22 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16079, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16079, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10102,7 +10036,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26502, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26502, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -10116,7 +10050,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26503, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26503, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -10130,7 +10064,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26501, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26501, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -10144,7 +10078,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26504, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26504, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -10157,19 +10091,19 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10181,7 +10115,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_flat( /** rct2: 0x00793278 */ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10193,7 +10127,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16099, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16099, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10207,10 +10141,10 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16096, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16096, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16100, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16100, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -10224,7 +10158,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16098, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16098, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10238,22 +10172,22 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16097, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16097, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10272,7 +10206,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26520, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26520, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10286,7 +10220,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26517, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26517, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10300,7 +10234,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26519, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26519, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10314,7 +10248,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26518, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26518, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10326,19 +10260,19 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10350,7 +10284,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x00793288 */ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10362,7 +10296,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16104, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16104, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10376,7 +10310,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16101, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16101, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10390,10 +10324,10 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16103, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16103, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16105, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16105, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -10407,22 +10341,22 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16102, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16102, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10441,7 +10375,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26524, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26524, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10455,7 +10389,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26521, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26521, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10469,7 +10403,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26523, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26523, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10483,7 +10417,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26522, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26522, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10495,19 +10429,19 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10519,7 +10453,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x00793258 */ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10531,7 +10465,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16089, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16089, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10545,10 +10479,10 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16086, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16086, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16090, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16090, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -10562,7 +10496,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16088, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16088, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10576,22 +10510,22 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16087, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16087, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10610,7 +10544,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26512, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26512, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10624,7 +10558,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26509, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26509, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10638,7 +10572,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26511, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26511, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10652,7 +10586,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26510, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26510, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10664,19 +10598,19 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10688,7 +10622,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x00793268 */ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10700,7 +10634,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16094, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16094, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10714,7 +10648,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16091, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16091, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10728,10 +10662,10 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16093, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16093, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16095, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16095, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -10745,22 +10679,22 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16092, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16092, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10779,7 +10713,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26516, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26516, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10793,7 +10727,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26513, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26513, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10807,7 +10741,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26515, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26515, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10821,7 +10755,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26514, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26514, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10833,19 +10767,19 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -10857,7 +10791,7 @@ static void multi_dimension_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x00793298 */ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -10869,7 +10803,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16092, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16092, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10882,10 +10816,10 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16093, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16093, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16095, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16095, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -10898,7 +10832,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16091, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16091, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -10911,22 +10845,22 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16094, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16094, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -10944,7 +10878,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26514, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26514, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10957,7 +10891,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26515, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26515, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10970,7 +10904,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26513, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26513, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10983,7 +10917,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26516, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26516, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -10995,19 +10929,19 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -11019,7 +10953,7 @@ static void multi_dimension_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x007932A8 */ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11031,7 +10965,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16087, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16087, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11044,7 +10978,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16088, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16088, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11057,10 +10991,10 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16086, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16086, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16090, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16090, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -11073,22 +11007,22 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16089, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16089, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11106,7 +11040,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26510, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26510, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11119,7 +11053,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26511, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26511, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11132,7 +11066,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26509, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26509, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11145,7 +11079,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26512, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26512, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11157,19 +11091,19 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -11181,7 +11115,7 @@ static void multi_dimension_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x007932B8 */ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11193,7 +11127,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16102, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16102, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11207,10 +11141,10 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16103, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16103, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16105, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16105, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -11224,7 +11158,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16101, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16101, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11238,22 +11172,22 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16104, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16104, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11272,7 +11206,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26522, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26522, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11286,7 +11220,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26523, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26523, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11300,7 +11234,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26521, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26521, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11314,7 +11248,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26524, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26524, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11326,19 +11260,19 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11350,7 +11284,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x007932C8 */ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11362,7 +11296,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16097, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16097, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11376,7 +11310,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16098, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16098, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11390,10 +11324,10 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16096, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16096, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16100, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16100, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -11407,22 +11341,22 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16099, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16099, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11441,7 +11375,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26518, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26518, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11455,7 +11389,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26519, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26519, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11469,7 +11403,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26517, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26517, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11483,7 +11417,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26520, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26520, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 32); break; } @@ -11495,19 +11429,19 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 40, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11519,7 +11453,7 @@ static void multi_dimension_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x007931F8 */ static void multi_dimension_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11531,7 +11465,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16075, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16075, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11545,7 +11479,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16072, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16072, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -11559,7 +11493,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16074, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16074, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11573,22 +11507,22 @@ static void multi_dimension_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16073, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16073, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11607,7 +11541,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26500, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26500, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11621,7 +11555,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26497, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26497, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11635,7 +11569,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26499, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26499, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11649,7 +11583,7 @@ static void multi_dimension_rc_track_diag_left_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26498, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26498, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11662,19 +11596,19 @@ static void multi_dimension_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11686,7 +11620,7 @@ static void multi_dimension_rc_track_diag_left_bank( /** rct2: 0x00793208 */ static void multi_dimension_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -11698,7 +11632,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16073, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16073, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11712,7 +11646,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16074, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16074, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -11726,7 +11660,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16072, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16072, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -11740,22 +11674,22 @@ static void multi_dimension_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16075, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16075, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11774,7 +11708,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26498, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26498, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11788,7 +11722,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26499, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26499, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11802,7 +11736,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26497, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26497, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11816,7 +11750,7 @@ static void multi_dimension_rc_track_diag_right_bank( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26500, -16, -16, 32, 32, 3, height + 24, + session, direction, session.TrackColours[SCHEME_TRACK] | 26500, -16, -16, 32, 32, 3, height + 24, -16, -16, height + 22); break; } @@ -11829,19 +11763,19 @@ static void multi_dimension_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 1, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 0, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 2, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 3, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -11853,7 +11787,7 @@ static void multi_dimension_rc_track_diag_right_bank( /** rct2: 0x007932D8 */ static void multi_dimension_rc_track_left_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11863,23 +11797,23 @@ static void multi_dimension_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26368, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26374, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26374, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26367, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26367, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26373, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26373, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -11896,20 +11830,20 @@ static void multi_dimension_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26369, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26369, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26375, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26375, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26366, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26366, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26372, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26372, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -11924,20 +11858,20 @@ static void multi_dimension_rc_track_left_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26370, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26370, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26376, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26376, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26365, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26365, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26371, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26371, 0, 6, 32, 20, 3, height + 24); break; } @@ -11947,7 +11881,7 @@ static void multi_dimension_rc_track_left_flyer_twist_up( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -11965,7 +11899,7 @@ static void multi_dimension_rc_track_left_flyer_twist_up( /** rct2: 0x007932E8 */ static void multi_dimension_rc_track_right_flyer_twist_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11975,23 +11909,23 @@ static void multi_dimension_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26380, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26380, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26386, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26386, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26379, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26385, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26385, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -12008,19 +11942,19 @@ static void multi_dimension_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26381, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26381, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26387, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26387, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26378, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26378, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26384, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26384, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -12035,19 +11969,19 @@ static void multi_dimension_rc_track_right_flyer_twist_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26382, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26382, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26388, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26388, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26377, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26377, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26383, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26383, 0, 6, 32, 20, 3, height + 24); break; } @@ -12057,7 +11991,7 @@ static void multi_dimension_rc_track_right_flyer_twist_up( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -12075,7 +12009,7 @@ static void multi_dimension_rc_track_right_flyer_twist_up( /** rct2: 0x007932F8 */ static void multi_dimension_rc_track_left_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12085,20 +12019,20 @@ static void multi_dimension_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26365, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26365, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26371, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26371, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26370, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26370, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26376, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26376, 0, 6, 32, 20, 3, height + 24); break; } @@ -12108,7 +12042,7 @@ static void multi_dimension_rc_track_left_flyer_twist_down( SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -12121,20 +12055,20 @@ static void multi_dimension_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26366, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26366, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26372, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26372, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26369, 0, 6, 32, 20, 3, height + 24, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26369, 0, 6, 32, 20, 3, height + 24, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26375, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26375, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -12149,23 +12083,23 @@ static void multi_dimension_rc_track_left_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26367, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26367, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26373, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26373, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26368, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26368, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26374, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26374, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -12187,7 +12121,7 @@ static void multi_dimension_rc_track_left_flyer_twist_down( /** rct2: 0x00793308 */ static void multi_dimension_rc_track_right_flyer_twist_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12197,19 +12131,19 @@ static void multi_dimension_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26377, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26377, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26383, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26383, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26382, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26382, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26388, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26388, 0, 6, 32, 20, 3, height + 24); break; } @@ -12219,7 +12153,7 @@ static void multi_dimension_rc_track_right_flyer_twist_down( SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -12232,19 +12166,19 @@ static void multi_dimension_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26378, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26378, 0, 6, 32, 20, 3, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26384, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26384, 0, 6, 32, 20, 3, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26381, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26381, 0, 6, 32, 20, 3, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26387, 0, 6, 32, 20, 3, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26387, 0, 6, 32, 20, 3, height + 24); break; } paint_util_set_segment_support_height( @@ -12259,23 +12193,23 @@ static void multi_dimension_rc_track_right_flyer_twist_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26379, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26385, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26385, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26380, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26380, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26386, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 26386, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -12297,7 +12231,7 @@ static void multi_dimension_rc_track_right_flyer_twist_down( /** rct2: 0x00793398 */ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12309,22 +12243,22 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height + 16, 0, 6, height + 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height + 16, 0, 6, height + 16); break; } @@ -12341,23 +12275,23 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height + 16, 24, - 6, height + 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height + 16, 24, 6, + height + 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height + 16, 24, - 6, height + 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height + 16, 24, 6, + height + 16); break; } paint_util_set_segment_support_height( @@ -12369,23 +12303,23 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height + 16, 28, - 6, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height + 16, 28, 6, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height + 16, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height + 16, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height + 16, 29, - 6, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height + 16, 29, 6, + height + 24); break; } paint_util_set_segment_support_height( @@ -12405,22 +12339,22 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -12437,22 +12371,22 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, height); break; } @@ -12465,22 +12399,22 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -12496,7 +12430,7 @@ static void multi_dimension_rc_track_multidim_inverted_flat_to_90_deg_quarter_lo /** rct2: 0x00793318 */ static void multi_dimension_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); @@ -12511,10 +12445,10 @@ static void multi_dimension_rc_track_block_brakes( }; PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | imageIds[direction][isClosed], 0, 0, 32, 20, 3, height, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | imageIds[direction][isClosed], 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -12529,15 +12463,15 @@ static void multi_dimension_rc_track_block_brakes( }; PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | imageIds[direction][isClosed], 0, 0, 32, 20, 3, + session, direction, session.TrackColours[SCHEME_TRACK] | imageIds[direction][isClosed], 0, 0, 32, 20, 3, height + 24, 0, 6, height + 24); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES_INVERTED, 4, 0, height + 36, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -12547,7 +12481,7 @@ static void multi_dimension_rc_track_block_brakes( /** rct2: 0x00793388 */ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12559,22 +12493,22 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -12587,22 +12521,22 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, height); break; } @@ -12615,22 +12549,22 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -12653,23 +12587,23 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height - 16, 28, - 6, height - 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height - 16, 28, 6, + height - 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height - 16, 28, - 6, height - 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height - 16, 28, 6, + height - 8); break; } paint_util_set_segment_support_height( @@ -12681,23 +12615,23 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height - 16, 24, - 6, height - 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height - 16, 24, 6, + height - 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 63, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 63, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 63, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 63, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height - 16, 24, - 6, height - 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height - 16, 24, 6, + height - 16); break; } paint_util_set_segment_support_height( @@ -12709,22 +12643,22 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height - 16, 0, 6, height - 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height - 16, 0, 6, height - 16); break; } @@ -12742,7 +12676,7 @@ static void multi_dimension_rc_track_multidim_90_deg_up_to_inverted_flat_quarter /** rct2: 0x00793398 */ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12754,22 +12688,22 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height + 16, 0, 6, height + 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height + 16, 0, 6, height + 16); break; } @@ -12786,23 +12720,23 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height + 16, 24, - 6, height + 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height + 16, 24, 6, + height + 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 3, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 3, height + 16, 0, 6, height + 18); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height + 16, 24, - 6, height + 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height + 16, 24, 6, + height + 16); break; } paint_util_set_segment_support_height( @@ -12814,23 +12748,23 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height + 16, 28, - 6, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height + 16, 28, 6, + height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height + 16, 0, 6, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height + 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height + 16, 0, 6, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height + 16, 29, - 6, height + 24); + session, direction, session.TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height + 16, 29, 6, + height + 24); break; } paint_util_set_segment_support_height( @@ -12850,22 +12784,22 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -12882,22 +12816,22 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, height); break; } @@ -12910,22 +12844,22 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -12941,7 +12875,7 @@ static void multi_dimension_rc_track_multidim_flat_to_90_deg_down_quarter_loop( /** rct2: 0x00793388 */ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (!trackElement.IsInverted()) @@ -12953,22 +12887,22 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16206, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16209, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16212, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16215, 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -12981,22 +12915,22 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16207, 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16210, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16213, 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16216, 0, 0, 2, 20, 31, height, -8, 6, height); break; } @@ -13009,22 +12943,22 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16208, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16211, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16214, 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 16217, 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -13047,23 +12981,23 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height - 16, 28, - 6, height - 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 26537, 0, 0, 2, 20, 31, height - 16, 28, 6, + height - 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26540, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26543, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height - 16, 28, - 6, height - 8); + session, direction, session.TrackColours[SCHEME_TRACK] | 26546, 0, 0, 2, 20, 31, height - 16, 28, 6, + height - 8); break; } paint_util_set_segment_support_height( @@ -13075,23 +13009,23 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height - 16, 24, - 6, height - 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26538, 0, 0, 2, 20, 31, height - 16, 24, 6, + height - 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 63, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26541, 0, 0, 2, 20, 63, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 63, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26544, 0, 0, 2, 20, 63, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height - 16, 24, - 6, height - 16); + session, direction, session.TrackColours[SCHEME_TRACK] | 26547, 0, 0, 2, 20, 31, height - 16, 24, 6, + height - 16); break; } paint_util_set_segment_support_height( @@ -13103,22 +13037,22 @@ static void multi_dimension_rc_track_multidim_inverted_90_deg_up_to_flat_quarter { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26539, 0, 0, 32, 20, 3, height - 16, 0, 6, height - 16); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26542, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 31, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26545, 0, 0, 2, 20, 31, height - 16, 0, 6, height - 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height - 16, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26548, 0, 0, 32, 20, 3, height - 16, 0, 6, height - 16); break; } diff --git a/src/openrct2/ride/coaster/ReverseFreefallCoaster.cpp b/src/openrct2/ride/coaster/ReverseFreefallCoaster.cpp index 5012b6432b..315fd4a518 100644 --- a/src/openrct2/ride/coaster/ReverseFreefallCoaster.cpp +++ b/src/openrct2/ride/coaster/ReverseFreefallCoaster.cpp @@ -196,29 +196,29 @@ static constexpr const uint32_t reverse_freefall_rc_track_pieces_vertical_suppor }; static void paint_reverse_freefall_rc_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction & 1) { - uint32_t imageId = SPR_REVERSE_FREEFALL_RC_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_REVERSE_FREEFALL_RC_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } else { - uint32_t imageId = SPR_REVERSE_FREEFALL_RC_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_REVERSE_FREEFALL_RC_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 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 paint_reverse_freefall_rc_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -226,27 +226,27 @@ static void paint_reverse_freefall_rc_station( if (direction == 0 || direction == 2) { // height -= 2 (height - 2) - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height }); // height += 2 (height) - imageId = reverse_freefall_rc_track_pieces_station[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = reverse_freefall_rc_track_pieces_station[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else if (direction == 1 || direction == 3) { // height -= 2 (height - 2) - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height }); // height += 2 (height) - imageId = reverse_freefall_rc_track_pieces_station[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = reverse_freefall_rc_track_pieces_station[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 6, 0, height); - wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1) ? 1 : 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } @@ -257,7 +257,7 @@ static void paint_reverse_freefall_rc_station( } static void paint_reverse_freefall_rc_slope( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TESTPAINT_IGNORE_ALL(); @@ -268,9 +268,9 @@ static void paint_reverse_freefall_rc_slope( static constexpr const int32_t tunnelOffsets03[] = { 0, 0, 0, 16, 64 }; uint32_t supportsImageId = reverse_freefall_rc_track_pieces_slope_supports[trackSequence][direction] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; uint32_t trackImageId = reverse_freefall_rc_track_pieces_slope[trackSequence][direction] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; int8_t bbHeight; bool isDirection03 = (direction == 0 || direction == 3); switch (trackSequence) @@ -303,21 +303,21 @@ static void paint_reverse_freefall_rc_slope( PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 32, 20, bbHeight, height, 0, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + supportHeights[trackSequence], 0x20); break; case 5: - if (wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS])) + if (wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS])) { uint32_t floorImageId; if (direction & 1) { - floorImageId = SPR_FLOOR_PLANKS_90_DEG | session->TrackColours[SCHEME_SUPPORTS]; + floorImageId = SPR_FLOOR_PLANKS_90_DEG | session.TrackColours[SCHEME_SUPPORTS]; } else { - floorImageId = SPR_FLOOR_PLANKS | session->TrackColours[SCHEME_SUPPORTS]; + floorImageId = SPR_FLOOR_PLANKS | session.TrackColours[SCHEME_SUPPORTS]; } PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height }); PaintAddImageAsChildRotated( @@ -344,7 +344,7 @@ static void paint_reverse_freefall_rc_slope( PaintAddImageAsParentRotated(session, direction, trackImageId, 0, 0, 1, 20, 126, height, 27, 6, height); PaintAddImageAsChildRotated(session, direction, supportsImageId, 0, 0, 1, 20, 126, height, 27, 6, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + supportHeights[trackSequence], 0x20); break; @@ -352,7 +352,7 @@ static void paint_reverse_freefall_rc_slope( } static void paint_reverse_freefall_rc_vertical( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t supportsImageId, trackImageId; @@ -360,13 +360,13 @@ static void paint_reverse_freefall_rc_vertical( { case 0: supportsImageId = reverse_freefall_rc_track_pieces_vertical_supports[direction] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, supportsImageId, { 0, 0, height }, { 26, 26, 79 }, { 3, 3, height }); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 80, 0x20); break; case 1: - trackImageId = reverse_freefall_rc_track_pieces_vertical[direction] | session->TrackColours[SCHEME_TRACK]; + trackImageId = reverse_freefall_rc_track_pieces_vertical[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, trackImageId, 0, 0, 2, 20, 79, height, 0, 6, height); @@ -383,7 +383,7 @@ static void paint_reverse_freefall_rc_vertical( } static void paint_reverse_freefall_rc_onride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -395,7 +395,7 @@ static void paint_reverse_freefall_rc_onride_photo( // The straight track without booster is borrowed from the APVC. // It has one track colour, instead of the two that the Reverse Freefall Colour has. - uint32_t colour = session->TrackColours[SCHEME_TRACK]; + uint32_t colour = session.TrackColours[SCHEME_TRACK]; if (!trackElement.IsGhost() && !trackElement.IsHighlighted()) { // Replace remap colour 1 (bits 19-23) with a copy of remap colour 2 (bits 24-28). @@ -407,7 +407,7 @@ static void paint_reverse_freefall_rc_onride_photo( uint32_t imageId = imageIds[direction] | colour; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); diff --git a/src/openrct2/ride/coaster/ReverserRollerCoaster.cpp b/src/openrct2/ride/coaster/ReverserRollerCoaster.cpp index ff9bd8dc20..d22349da26 100644 --- a/src/openrct2/ride/coaster/ReverserRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/ReverserRollerCoaster.cpp @@ -27,7 +27,7 @@ * rct2: 0x006D4453 */ void vehicle_visual_reverser( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { Vehicle* v1 = GetEntity(vehicle->prev_vehicle_on_ride); @@ -39,15 +39,15 @@ void vehicle_visual_reverser( x = (v1->x + v2->x) / 2; y = (v1->y + v2->y) / 2; z = (v1->z + v2->z) / 2; - session->SpritePosition.x = x; - session->SpritePosition.y = y; + session.SpritePosition.x = x; + session.SpritePosition.y = y; vehicle_visual_default(session, imageDirection, z, vehicle, vehicleEntry); } #endif /** rct2: 0x0086E65C */ static void reverser_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -57,14 +57,14 @@ static void reverser_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21520, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21520, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21521, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21521, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -75,14 +75,14 @@ static void reverser_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21504, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21504, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21505, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21505, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -92,7 +92,7 @@ static void reverser_rc_track_flat( } static void reverser_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -103,11 +103,10 @@ static void reverser_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, - height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -116,7 +115,7 @@ static void reverser_rc_track_station( /** rct2: 0x0086E66C */ static void reverser_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -125,23 +124,23 @@ static void reverser_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21530, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21530, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21531, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21531, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21532, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21532, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21533, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21533, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -151,23 +150,23 @@ static void reverser_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21516, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21516, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21517, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21517, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21518, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21518, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21519, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21519, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -185,7 +184,7 @@ static void reverser_rc_track_25_deg_up( /** rct2: 0x0086E67C */ static void reverser_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -194,23 +193,23 @@ static void reverser_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21522, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21522, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21523, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21523, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21524, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21524, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21525, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21525, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -220,23 +219,23 @@ static void reverser_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21508, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21508, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21509, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21509, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21510, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21510, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21511, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21511, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -254,7 +253,7 @@ static void reverser_rc_track_flat_to_25_deg_up( /** rct2: 0x0086E68C */ static void reverser_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -263,23 +262,23 @@ static void reverser_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21526, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21526, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21527, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21527, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21528, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21528, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21529, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21529, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -289,23 +288,23 @@ static void reverser_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21512, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21512, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21513, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21513, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21514, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21514, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21515, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21515, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -323,7 +322,7 @@ static void reverser_rc_track_25_deg_up_to_flat( /** rct2: 0x0086E69C */ static void reverser_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { reverser_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -331,7 +330,7 @@ static void reverser_rc_track_25_deg_down( /** rct2: 0x0086E6AC */ static void reverser_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { reverser_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -339,7 +338,7 @@ static void reverser_rc_track_flat_to_25_deg_down( /** rct2: 0x0086E6BC */ static void reverser_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { reverser_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -347,7 +346,7 @@ static void reverser_rc_track_25_deg_down_to_flat( /** rct2: 0x0086E6CC */ static void reverser_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -357,23 +356,23 @@ static void reverser_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21543, 0, 2, 32, 27, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21543, 0, 2, 32, 27, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21548, 0, 2, 32, 27, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21548, 0, 2, 32, 27, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21553, 0, 2, 32, 32, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21553, 0, 2, 32, 32, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21538, 0, 2, 32, 32, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21538, 0, 2, 32, 32, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -393,23 +392,23 @@ static void reverser_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21542, 0, 0, 32, 16, 2, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21542, 0, 0, 32, 16, 2, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21547, 0, 0, 32, 16, 2, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21547, 0, 0, 32, 16, 2, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21552, 0, 16, 32, 16, 2, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21552, 0, 16, 32, 16, 2, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21537, 0, 16, 32, 16, 2, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21537, 0, 16, 32, 16, 2, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -424,23 +423,23 @@ static void reverser_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21541, 0, 16, 16, 16, 2, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21541, 0, 16, 16, 16, 2, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21546, 16, 16, 16, 16, 2, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21546, 16, 16, 16, 16, 2, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21551, 16, 0, 16, 16, 2, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21551, 16, 0, 16, 16, 2, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21536, 0, 0, 16, 16, 2, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21536, 0, 0, 16, 16, 2, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -461,23 +460,23 @@ static void reverser_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21540, 16, 0, 16, 34, 2, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21540, 16, 0, 16, 34, 2, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21545, 0, 0, 16, 32, 2, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21545, 0, 0, 16, 32, 2, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21550, 0, 0, 16, 32, 2, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21550, 0, 0, 16, 32, 2, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21535, 16, 0, 16, 32, 2, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21535, 16, 0, 16, 32, 2, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -492,23 +491,23 @@ static void reverser_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21539, 2, 0, 32, 32, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21539, 2, 0, 32, 32, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21544, 2, 0, 27, 32, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21544, 2, 0, 27, 32, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21549, 2, 0, 27, 32, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21549, 2, 0, 27, 32, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21534, 2, 0, 32, 32, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21534, 2, 0, 32, 32, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -528,7 +527,7 @@ static void reverser_rc_track_left_quarter_turn_5( /** rct2: 0x0086E6DC */ static void reverser_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -537,7 +536,7 @@ static void reverser_rc_track_right_quarter_turn_5( /** rct2: 0x0086E6EC */ static void reverser_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -547,23 +546,23 @@ static void reverser_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21566, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21566, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21570, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21570, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21569, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21569, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21573, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21573, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -578,23 +577,23 @@ static void reverser_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21567, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21567, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21571, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21571, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21568, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21568, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21572, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21572, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -609,23 +608,23 @@ static void reverser_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21568, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21568, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21572, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21572, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21567, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21567, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21571, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21571, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -640,23 +639,23 @@ static void reverser_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21569, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21569, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21573, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21573, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21566, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21566, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21570, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21570, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -676,7 +675,7 @@ static void reverser_rc_track_s_bend_left( /** rct2: 0x0086E6FC */ static void reverser_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -686,23 +685,23 @@ static void reverser_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21574, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21574, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21578, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21578, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21577, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21577, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21581, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21581, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -717,23 +716,23 @@ static void reverser_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21575, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21575, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21579, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21579, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21576, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21576, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21580, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21580, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -748,23 +747,23 @@ static void reverser_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21576, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21576, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21580, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21580, 0, 0, 32, 26, 2, height, 0, 0, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21575, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21575, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21579, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21579, 0, 0, 32, 26, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -779,23 +778,23 @@ static void reverser_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21577, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21577, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21581, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21581, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21574, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21574, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21578, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21578, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -815,7 +814,7 @@ static void reverser_rc_track_s_bend_right( /** rct2: 0x0086E73C */ static void reverser_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -825,23 +824,23 @@ static void reverser_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21559, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21559, 0, 0, 32, 20, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21562, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21562, 0, 0, 32, 20, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21565, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21565, 0, 0, 32, 20, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21556, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21556, 0, 0, 32, 20, 2, height, 0, 6, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -859,21 +858,19 @@ static void reverser_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21558, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21558, 0, 0, 16, 16, 2, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21561, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21561, 0, 0, 16, 16, 2, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21564, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21564, 0, 0, 16, 16, 2, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21555, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21555, 0, 0, 16, 16, 2, height, 16, 16, height); break; } @@ -886,23 +883,23 @@ static void reverser_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21557, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21557, 0, 0, 20, 32, 2, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21560, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21560, 0, 0, 20, 32, 2, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21563, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21563, 0, 0, 20, 32, 2, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21554, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21554, 0, 0, 20, 32, 2, height, 6, 0, height); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -922,7 +919,7 @@ static void reverser_rc_track_left_quarter_turn_3( /** rct2: 0x0086E74C */ static void reverser_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -931,7 +928,7 @@ static void reverser_rc_track_right_quarter_turn_3( /** rct2: 0x0086E75C */ static void reverser_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -939,14 +936,14 @@ static void reverser_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21506, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21506, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21507, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21507, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -956,7 +953,7 @@ static void reverser_rc_track_brakes( /** rct2: 0x0086E76C */ static void reverser_rc_track_left_reverser( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -966,23 +963,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21582, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21582, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21588, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21588, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21594, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21594, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21600, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21600, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -997,23 +994,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21585, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21585, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21591, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21591, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21597, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21597, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21603, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21603, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1024,23 +1021,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21586, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21586, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21592, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21592, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21598, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21598, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21604, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21604, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1051,23 +1048,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21587, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21587, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21593, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21593, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21599, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21599, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21605, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21605, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1078,23 +1075,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21583, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21583, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21589, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21589, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21595, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21595, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21601, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21601, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1105,23 +1102,23 @@ static void reverser_rc_track_left_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21584, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21584, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21590, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21590, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21596, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21596, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21602, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21602, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1141,7 +1138,7 @@ static void reverser_rc_track_left_reverser( /** rct2: 0x0086E77C */ static void reverser_rc_track_right_reverser( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1151,23 +1148,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21596, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21596, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21602, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21602, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21584, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21584, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21590, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21590, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1182,23 +1179,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21599, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21599, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21605, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21605, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21587, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21587, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21593, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21593, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1209,23 +1206,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21598, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21598, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21604, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21604, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21586, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21586, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21592, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21592, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1236,23 +1233,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21597, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21597, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21603, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21603, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21585, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21585, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21591, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21591, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1263,23 +1260,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21595, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21595, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21601, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21601, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21583, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21583, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21589, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21589, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1290,23 +1287,23 @@ static void reverser_rc_track_right_reverser( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21594, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21594, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21600, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21600, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21582, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21582, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21588, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21588, 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) diff --git a/src/openrct2/ride/coaster/SideFrictionRollerCoaster.cpp b/src/openrct2/ride/coaster/SideFrictionRollerCoaster.cpp index 9033f6af38..9ae6ddffed 100644 --- a/src/openrct2/ride/coaster/SideFrictionRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/SideFrictionRollerCoaster.cpp @@ -67,7 +67,7 @@ constexpr int32_t SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_3_A = 21879; /** rct2: 0x0077839C */ static void side_friction_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -76,35 +76,31 @@ static void side_friction_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21662, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21662, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21664, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21664, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21663, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21663, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21665, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21665, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21666, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21666, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21668, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21668, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21667, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21667, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21669, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21669, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -115,20 +111,18 @@ static void side_friction_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21606, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21606, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21608, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21608, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21607, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21607, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21609, 0, 0, 32, 27, 0, height, 0, 2, - height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21609, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -139,7 +133,7 @@ static void side_friction_rc_track_flat( /** rct2: 0x007784AC, 0x007784BC, 0x007784CC */ static void side_friction_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -150,8 +144,8 @@ static void side_friction_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, imageIds[direction] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 27, 2, height, 0, 2, height); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -160,7 +154,7 @@ static void side_friction_rc_track_station( /** rct2: 0x007783AC */ static void side_friction_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -169,31 +163,31 @@ static void side_friction_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21678, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21678, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21690, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21690, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21679, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21679, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21691, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21691, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21680, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21680, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21692, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21692, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21681, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21681, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21693, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21693, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -203,31 +197,31 @@ static void side_friction_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21622, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21622, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21634, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21634, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21623, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21623, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21635, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21635, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21624, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21624, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21636, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21636, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21625, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21625, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21637, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21637, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -245,7 +239,7 @@ static void side_friction_rc_track_25_deg_up( /** rct2: 0x007783CC */ static void side_friction_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -254,31 +248,31 @@ static void side_friction_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21670, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21670, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21682, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21682, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21671, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21671, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21683, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21683, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21672, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21672, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21684, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21684, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21673, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21673, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21685, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21685, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -288,31 +282,31 @@ static void side_friction_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21614, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21614, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21626, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21626, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21615, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21615, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21627, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21627, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21616, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21616, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21628, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21628, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21617, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21617, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21629, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21629, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -330,7 +324,7 @@ static void side_friction_rc_track_flat_to_25_deg_up( /** rct2: 0x007783FC */ static void side_friction_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -339,31 +333,31 @@ static void side_friction_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21674, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21674, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21686, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21686, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21675, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21675, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21687, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21687, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21676, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21676, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21688, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21688, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21677, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21677, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21689, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21689, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -373,31 +367,31 @@ static void side_friction_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21618, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21618, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21630, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21630, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21619, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21619, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21631, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21631, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21620, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21620, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21632, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21632, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21621, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21621, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21633, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21633, 0, 0, 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -415,7 +409,7 @@ static void side_friction_rc_track_25_deg_up_to_flat( /** rct2: 0x0077840C */ static void side_friction_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -423,7 +417,7 @@ static void side_friction_rc_track_25_deg_down( /** rct2: 0x0077842C */ static void side_friction_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -431,7 +425,7 @@ static void side_friction_rc_track_flat_to_25_deg_down( /** rct2: 0x0077845C */ static void side_friction_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -439,7 +433,7 @@ static void side_friction_rc_track_25_deg_down_to_flat( /** rct2: 0x0077846C */ static void side_friction_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -449,35 +443,35 @@ static void side_friction_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21727, 0, 2, 32, 27, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21727, 0, 2, 32, 27, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21747, 0, 2, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21747, 0, 2, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21732, 0, 2, 32, 27, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21732, 0, 2, 32, 27, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21752, 0, 2, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21752, 0, 2, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21737, 0, 2, 32, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21737, 0, 2, 32, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21757, 0, 2, 32, 32, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21757, 0, 2, 32, 32, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21722, 0, 2, 32, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21722, 0, 2, 32, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21742, 0, 2, 32, 32, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21742, 0, 2, 32, 32, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -497,35 +491,35 @@ static void side_friction_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21726, 0, 0, 32, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21726, 0, 0, 32, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21746, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21746, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21731, 0, 0, 32, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21731, 0, 0, 32, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21751, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21751, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21736, 0, 16, 32, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21736, 0, 16, 32, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21756, 0, 16, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21756, 0, 16, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21721, 0, 16, 32, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21721, 0, 16, 32, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21741, 0, 16, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21741, 0, 16, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -540,35 +534,35 @@ static void side_friction_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21725, 0, 16, 16, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21725, 0, 16, 16, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21745, 0, 16, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21745, 0, 16, 16, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21730, 16, 16, 16, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21730, 16, 16, 16, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21750, 16, 16, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21750, 16, 16, 16, 16, 0, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21735, 16, 0, 16, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21735, 16, 0, 16, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21755, 16, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21755, 16, 0, 16, 16, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21720, 0, 0, 16, 16, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21720, 0, 0, 16, 16, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21740, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21740, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -589,35 +583,35 @@ static void side_friction_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21724, 16, 0, 16, 34, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21724, 16, 0, 16, 34, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21744, 16, 0, 16, 34, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21744, 16, 0, 16, 34, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21729, 0, 0, 16, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21729, 0, 0, 16, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21749, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21749, 0, 0, 16, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21734, 0, 0, 16, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21734, 0, 0, 16, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21754, 0, 0, 16, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21754, 0, 0, 16, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21719, 16, 0, 16, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21719, 16, 0, 16, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21739, 16, 0, 16, 32, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21739, 16, 0, 16, 32, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -632,35 +626,35 @@ static void side_friction_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21723, 2, 0, 32, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21723, 2, 0, 32, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21743, 2, 0, 32, 32, 0, height, 2, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21743, 2, 0, 32, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21728, 2, 0, 27, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21728, 2, 0, 27, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21748, 2, 0, 27, 32, 0, height, 2, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21748, 2, 0, 27, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21733, 2, 0, 27, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21733, 2, 0, 27, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21753, 2, 0, 27, 32, 0, height, 2, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21753, 2, 0, 27, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21718, 2, 0, 32, 32, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21718, 2, 0, 32, 32, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21738, 2, 0, 32, 32, 0, height, 2, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21738, 2, 0, 32, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -680,7 +674,7 @@ static void side_friction_rc_track_left_quarter_turn_5( /** rct2: 0x0077847C */ static void side_friction_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -689,7 +683,7 @@ static void side_friction_rc_track_right_quarter_turn_5( /** rct2: 0x0077848C */ static void side_friction_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -699,35 +693,35 @@ static void side_friction_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21888, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21888, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21904, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21904, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21892, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21892, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21908, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21908, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21891, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21891, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21907, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21907, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21895, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21895, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21911, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21911, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -742,35 +736,35 @@ static void side_friction_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21889, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21889, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21905, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21905, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21893, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21893, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21909, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21909, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21890, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21890, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21906, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21906, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21894, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21894, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21910, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21910, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -785,35 +779,35 @@ static void side_friction_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21890, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21890, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21906, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21906, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21894, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21894, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21910, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21910, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21889, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21889, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21905, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21905, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21893, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21893, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21909, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21909, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -828,35 +822,35 @@ static void side_friction_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21891, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21891, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21907, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21907, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21895, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21895, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21911, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21911, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21888, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21888, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21904, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21904, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21892, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21892, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21908, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21908, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -876,7 +870,7 @@ static void side_friction_rc_track_s_bend_left( /** rct2: 0x0077849C */ static void side_friction_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -886,35 +880,35 @@ static void side_friction_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21896, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21896, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21912, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21912, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21900, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21900, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21916, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21916, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21899, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21899, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21915, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21915, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21903, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21903, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21919, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21919, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -929,35 +923,35 @@ static void side_friction_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21897, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21897, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21913, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21913, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21901, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21901, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21917, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21917, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21898, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21898, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21914, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21914, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21902, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21902, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21918, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21918, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -972,35 +966,35 @@ static void side_friction_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21898, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21898, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21914, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21914, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21902, 0, 0, 32, 26, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21902, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21918, 0, 0, 32, 26, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21918, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21897, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21897, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21913, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21913, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21901, 0, 0, 32, 26, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21901, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21917, 0, 0, 32, 26, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21917, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1015,35 +1009,35 @@ static void side_friction_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21899, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21899, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21915, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21915, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21903, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21903, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21919, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21919, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21896, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21896, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21912, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21912, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21900, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21900, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21916, 0, 0, 32, 27, 0, height, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | 21916, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1063,7 +1057,7 @@ static void side_friction_rc_track_s_bend_right( /** rct2: 0x007784DC */ static void side_friction_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1073,35 +1067,35 @@ static void side_friction_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21699, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21699, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21711, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21711, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21702, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21702, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21714, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21714, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21705, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21705, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21717, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21717, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21696, 0, 0, 32, 20, 2, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21696, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21708, 0, 0, 32, 20, 0, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 21708, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1119,33 +1113,31 @@ static void side_friction_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21698, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21698, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21710, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21710, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21701, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21701, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21713, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21713, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21704, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21704, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21716, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21716, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21695, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21695, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21707, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21707, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -1158,35 +1150,35 @@ static void side_friction_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21697, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21697, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21709, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21709, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21700, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21700, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21712, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21712, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21703, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21703, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21715, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21715, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21694, 0, 0, 20, 32, 2, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21694, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21706, 0, 0, 20, 32, 0, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21706, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -1206,7 +1198,7 @@ static void side_friction_rc_track_left_quarter_turn_3( /** rct2: 0x007784EC */ static void side_friction_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1215,7 +1207,7 @@ static void side_friction_rc_track_right_quarter_turn_3( /** rct2: 0x007784FC */ static void side_friction_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1223,18 +1215,18 @@ static void side_friction_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21610, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21610, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21612, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21612, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21611, 0, 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21611, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21613, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 21613, 0, 0, 32, 27, 0, height, 0, 2, height + 27); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1244,7 +1236,7 @@ static void side_friction_rc_track_brakes( /** rct2: 0x007785DC */ static void side_friction_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1254,35 +1246,35 @@ static void side_friction_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21790, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21790, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21806, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21806, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21794, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21794, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21810, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21810, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21798, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21798, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21814, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21814, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21802, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21802, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21818, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21818, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1297,37 +1289,35 @@ static void side_friction_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21791, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21791, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21807, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21807, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21795, 0, 0, 34, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21795, 0, 0, 34, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21811, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21811, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21799, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21799, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21815, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21815, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21803, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21803, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21819, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21819, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1338,38 +1328,36 @@ static void side_friction_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21792, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21792, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21808, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21808, 0, 0, 16, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21796, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21796, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21812, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21812, 0, 0, 16, 16, 0, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21800, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21800, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21816, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21816, 0, 0, 16, 16, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21804, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21804, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21820, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21820, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1379,16 +1367,16 @@ static void side_friction_rc_track_left_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1399,33 +1387,31 @@ static void side_friction_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21793, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21793, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21809, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21809, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21797, 0, 0, 16, 18, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21797, 0, 0, 16, 18, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21813, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21813, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21801, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21801, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21817, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21817, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21805, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21805, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21821, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21821, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; } @@ -1437,7 +1423,7 @@ static void side_friction_rc_track_left_eighth_to_diag( /** rct2: 0x007785EC */ static void side_friction_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1447,35 +1433,35 @@ static void side_friction_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21758, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21758, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21774, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21774, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21762, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21762, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21778, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21778, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21766, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21766, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21782, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21782, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21770, 0, 0, 32, 32, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21770, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21786, 0, 0, 32, 32, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21786, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1490,37 +1476,35 @@ static void side_friction_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21759, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21759, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21775, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21775, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21763, 0, 0, 32, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21763, 0, 0, 32, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21779, 0, 0, 32, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21779, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21767, 0, 0, 34, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21767, 0, 0, 34, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21783, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21783, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21771, 0, 0, 32, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21771, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21787, 0, 0, 32, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21787, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1531,37 +1515,35 @@ static void side_friction_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21760, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21760, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21776, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21776, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21764, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21764, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21780, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21780, 0, 0, 16, 16, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21768, 0, 0, 28, 28, 2, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21768, 0, 0, 28, 28, 2, height, 4, 4, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21784, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 21784, 0, 0, 28, 28, 0, height, 4, 4, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21772, 0, 0, 16, 16, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21772, 0, 0, 16, 16, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21788, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21788, 0, 0, 16, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1571,16 +1553,16 @@ static void side_friction_rc_track_right_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1591,33 +1573,31 @@ static void side_friction_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21761, 0, 0, 16, 16, 2, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21761, 0, 0, 16, 16, 2, height, 16, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21777, 0, 0, 16, 16, 0, height, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21777, 0, 0, 16, 16, 0, height, 16, 0, height + 27); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21765, 0, 0, 16, 16, 2, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21765, 0, 0, 16, 16, 2, height, 0, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21781, 0, 0, 16, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 21781, 0, 0, 16, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21769, 0, 0, 16, 18, 2, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 21769, 0, 0, 16, 18, 2, height, 0, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21785, 0, 0, 16, 16, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21785, 0, 0, 16, 16, 0, height, 0, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21773, 0, 0, 16, 16, 2, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21773, 0, 0, 16, 16, 2, height, 16, 16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21789, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21789, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; } @@ -1629,7 +1609,7 @@ static void side_friction_rc_track_right_eighth_to_diag( /** rct2: 0x007785FC */ static void side_friction_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1638,7 +1618,7 @@ static void side_friction_rc_track_left_eighth_to_orthogonal( /** rct2: 0x0077860C */ static void side_friction_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1647,7 +1627,7 @@ static void side_friction_rc_track_right_eighth_to_orthogonal( /** rct2: 0x0077850C */ static void side_friction_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1659,7 +1639,7 @@ static void side_friction_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21849, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21849, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1670,7 +1650,7 @@ static void side_friction_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21825, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21825, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1685,21 +1665,21 @@ static void side_friction_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21846, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21846, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21850, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21850, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1709,21 +1689,21 @@ static void side_friction_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21822, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21822, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21826, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21826, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1736,22 +1716,22 @@ static void side_friction_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21848, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21848, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21851, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21851, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1760,22 +1740,22 @@ static void side_friction_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21824, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21824, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21827, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21827, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1789,7 +1769,7 @@ static void side_friction_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21847, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21847, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1800,7 +1780,7 @@ static void side_friction_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21823, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21823, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1813,7 +1793,7 @@ static void side_friction_rc_track_diag_flat( /** rct2: 0x0077853C */ static void side_friction_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1825,7 +1805,7 @@ static void side_friction_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21867, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21867, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1836,7 +1816,7 @@ static void side_friction_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21843, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21843, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1851,21 +1831,21 @@ static void side_friction_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21864, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21864, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21868, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21868, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1875,21 +1855,21 @@ static void side_friction_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21840, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21840, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21844, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21844, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1902,22 +1882,22 @@ static void side_friction_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21866, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21866, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21869, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21869, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1926,22 +1906,22 @@ static void side_friction_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21842, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21842, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21845, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21845, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1955,7 +1935,7 @@ static void side_friction_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21865, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21865, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1966,7 +1946,7 @@ static void side_friction_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21841, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21841, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -1979,7 +1959,7 @@ static void side_friction_rc_track_diag_25_deg_up( /** rct2: 0x0077851C */ static void side_friction_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1991,7 +1971,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21855, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21855, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2002,7 +1982,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21831, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21831, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2017,21 +1997,21 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21852, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21852, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21856, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21856, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2041,21 +2021,21 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21828, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21828, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21832, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21832, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2068,22 +2048,22 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21854, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21854, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21857, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2092,22 +2072,22 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21830, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21830, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21833, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21833, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2121,7 +2101,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21853, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21853, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2132,7 +2112,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21829, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21829, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2145,7 +2125,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x0077852C */ static void side_friction_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2157,7 +2137,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21861, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21861, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2168,7 +2148,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21837, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21837, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2183,21 +2163,21 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21858, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21858, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21862, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21862, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2207,21 +2187,21 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21834, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21834, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21838, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21838, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2234,22 +2214,22 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21860, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21860, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21863, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21863, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2258,22 +2238,22 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21836, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21836, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21839, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21839, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2287,7 +2267,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21859, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21859, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2298,7 +2278,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21835, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21835, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2311,7 +2291,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x0077859C */ static void side_friction_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2323,7 +2303,7 @@ static void side_friction_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21865, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21865, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2334,7 +2314,7 @@ static void side_friction_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21841, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21841, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2349,21 +2329,21 @@ static void side_friction_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21866, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21866, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21869, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21869, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2373,21 +2353,21 @@ static void side_friction_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21842, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21842, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21845, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21845, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2400,22 +2380,22 @@ static void side_friction_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21864, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21864, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21868, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21868, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2424,22 +2404,22 @@ static void side_friction_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21840, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21840, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21844, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21844, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2453,7 +2433,7 @@ static void side_friction_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21867, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21867, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2464,7 +2444,7 @@ static void side_friction_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21843, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21843, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2477,7 +2457,7 @@ static void side_friction_rc_track_diag_25_deg_down( /** rct2: 0x0077857C */ static void side_friction_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2489,7 +2469,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21859, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21859, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2500,7 +2480,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21835, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21835, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2513,21 +2493,21 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21860, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21860, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21863, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21863, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2537,21 +2517,21 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21836, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21836, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21839, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21839, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2562,22 +2542,22 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21858, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21858, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21862, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21862, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2586,22 +2566,22 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21834, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21834, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21838, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21838, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2613,7 +2593,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21861, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21861, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2624,7 +2604,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21837, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21837, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2638,7 +2618,7 @@ static void side_friction_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x0077858C */ static void side_friction_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2650,7 +2630,7 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21853, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21853, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2661,7 +2641,7 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21829, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21829, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2676,21 +2656,21 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21854, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21854, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21857, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21857, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2700,21 +2680,21 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21830, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21830, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21833, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21833, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2727,22 +2707,22 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21852, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21852, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21856, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21856, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2751,22 +2731,22 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21828, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21828, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21832, -16, -16, 32, 32, 0, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21832, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2780,7 +2760,7 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21855, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21855, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2791,7 +2771,7 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 21831, -16, -16, 32, 32, 2, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 21831, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -2803,49 +2783,49 @@ static void side_friction_rc_track_diag_25_deg_down_to_flat( } static void side_friction_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_0_A, 0, 0, 32, 27, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_0_A, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_0_B, 0, 0, 32, 1, 9, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_0_B, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_1_A, 0, 0, 32, 27, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_1_A, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_1_B, 0, 0, 32, 1, 9, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_1_B, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 22, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 22, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_2_A, 0, 0, 32, 27, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_2_A, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_2_B, 0, 0, 32, 1, 9, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_2_B, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 23, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 23, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_3_A, 0, 0, 32, 27, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_3_A, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_3_B, 0, 0, 32, 1, 9, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_DIR_3_B, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2862,53 +2842,53 @@ static void side_friction_rc_track_60_deg_up( } static void side_friction_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void side_friction_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_0_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_0_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_0_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_0_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 13, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_1_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_1_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_1_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 14, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_1_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 14, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_2_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_2_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_2_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_2_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_3_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_3_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_3_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_25_DEG_UP_TO_60_DEG_UP_DIR_3_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2925,53 +2905,53 @@ static void side_friction_rc_track_25_deg_up_to_60_deg_up( } static void side_friction_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void side_friction_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_0_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_0_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_0_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_0_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_1_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_1_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_1_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_1_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 18, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_2_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_2_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_2_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 19, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_2_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 0, 19, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_3_A, 0, - 0, 32, 27, 2, height, 0, 2, height); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_3_A, 0, 0, + 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_3_B, 0, - 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_60_DEG_UP_TO_25_DEG_UP_DIR_3_B, 0, 0, + 32, 1, 9, height, 0, 26, height + 5); + wooden_a_supports_paint_setup(session, 1, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2988,14 +2968,14 @@ static void side_friction_rc_track_60_deg_up_to_25_deg_up( } static void side_friction_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void side_friction_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3005,7 +2985,7 @@ static void side_friction_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_3_A, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_3_A, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -3017,21 +2997,21 @@ static void side_friction_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_0_A, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_0_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_0_B, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_0_B, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3042,22 +3022,22 @@ static void side_friction_rc_track_diag_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_2_A, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_2_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_2_B, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_2_B, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3068,7 +3048,7 @@ static void side_friction_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_1_A, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_DIR_1_A, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -3080,14 +3060,14 @@ static void side_friction_rc_track_diag_60_deg_up( } static void side_friction_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_diag_60_deg_up(session, ride, 3 - trackSequence, (direction + 2) % 4, height, trackElement); } static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3098,7 +3078,7 @@ static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_3_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_3_A, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -3111,22 +3091,22 @@ static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_0_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_0_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_0_B, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_0_B, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3136,24 +3116,24 @@ static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_2_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_2_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_2_B, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_2_B, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3165,7 +3145,7 @@ static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_1_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_60_DEG_UP_TO_25_DEG_UP_DIR_1_A, -16, -16, 16, 16, 2, height, 0, 0, height); break; } @@ -3176,7 +3156,7 @@ static void side_friction_rc_track_diag_60_deg_up_to_25_deg_up( } static void side_friction_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_diag_60_deg_up_to_25_deg_up( @@ -3184,7 +3164,7 @@ static void side_friction_rc_track_diag_25_deg_down_to_60_deg_down( }; static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3195,7 +3175,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_3_A, -16 + 4, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_3_A, -16 + 4, -16 + 2, 32, 32, 2, height, -16, -16, height); break; } @@ -3208,21 +3188,21 @@ static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_0_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_0_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 24033, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 24033, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3232,23 +3212,23 @@ static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_2_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_2_A, -16, -16, 32, 32, 2, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 24034, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 24034, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3260,7 +3240,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_1_A, -16, -16, + session.TrackColours[SCHEME_TRACK] | SPR_SIDE_FRICTION_DIAG_25_DEG_UP_TO_60_DEG_UP_DIR_1_A, -16, -16, 32, 32, 2, height, -16, -16, height); break; } @@ -3271,7 +3251,7 @@ static void side_friction_rc_track_diag_25_deg_up_to_60_deg_up( } static void side_friction_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { side_friction_rc_track_diag_25_deg_up_to_60_deg_up( diff --git a/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp b/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp index 9a61430eae..0f16cf3101 100644 --- a/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp @@ -27,7 +27,7 @@ namespace SingleRailRC { static void TrackFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -36,29 +36,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 0), 0, - 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 0), 0, 0, + 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 1), 0, - 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 1), 0, 0, + 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 2), 0, - 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 2), 0, 0, + 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 3), 0, - 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 3), 0, 0, + 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -68,20 +68,20 @@ namespace SingleRailRC case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -91,7 +91,7 @@ namespace SingleRailRC } static void TrackStation( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -104,19 +104,19 @@ namespace SingleRailRC if (trackElement.GetTrackType() == TrackElemType::EndStation) { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 2, height - 2, 0, 2, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 2, height - 2, 0, 2, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 4, 7); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -124,7 +124,7 @@ namespace SingleRailRC } static void Track25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -133,29 +133,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 8), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 9), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 9), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 10), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 10), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 11), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 11), 0, + 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -164,29 +164,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 8), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 9), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 9), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 10), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 10), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 11), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -203,7 +203,7 @@ namespace SingleRailRC } static void Track60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -212,29 +212,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 12), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 13), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 13), 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 14), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 14), 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 15), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -243,29 +243,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 12), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 13), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 13), 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 14), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 14), 0, 0, 32, 1, 98, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 15), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -282,7 +282,7 @@ namespace SingleRailRC } static void TrackFlatTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -291,29 +291,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 0), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 1), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 1), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 2), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 2), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 3), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -322,29 +322,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 0), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 1), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 1), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 2), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 2), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 3), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -361,7 +361,7 @@ namespace SingleRailRC } static void Track25DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -370,35 +370,35 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 0), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 1), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 1), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 2), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 2), 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 3), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 3), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 4), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 4), 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 5), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -407,35 +407,35 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 0), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 0), 0, 0, 32, + 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 1), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 1), 0, 0, 32, + 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 2), 0, 0, - 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 2), 0, 0, 32, + 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 3), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 3), 0, 0, 32, + 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 4), 0, 0, - 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 4), 0, 0, 32, + 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 5), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 5), 0, 0, 32, + 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -452,7 +452,7 @@ namespace SingleRailRC } static void Track60DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -461,35 +461,35 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 6), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 7), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 7), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 8), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 8), 0, 0, 32, 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 9), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 9), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 10), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 10), 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 11), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -498,35 +498,35 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 6), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 6), 0, 0, 32, + 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 7), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 7), 0, 0, 32, + 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 8), 0, 0, - 32, 1, 66, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 8), 0, 0, 32, + 1, 66, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 9), 0, 0, - 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 9), 0, 0, 32, + 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 10), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 10), 0, 0, 32, 1, 66, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 11), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -543,7 +543,7 @@ namespace SingleRailRC } static void Track25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -552,29 +552,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 4), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 5), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 6), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 7), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -583,29 +583,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 4), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 5), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 6), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 7), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -622,49 +622,49 @@ namespace SingleRailRC } static void Track25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpTo60DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -674,22 +674,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 8), - 0, 0, 2, 20, 31, height, 4, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 8), 0, + 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 9), - 0, 0, 2, 20, 31, height, 24, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 9), 0, + 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 10), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 10), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 11), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 11), 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -704,14 +704,14 @@ namespace SingleRailRC } static void Track90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track90DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegUpTo90DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -721,29 +721,29 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 0), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 0), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 1), - 0, 0, 2, 20, 55, height, 24, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 1), 0, + 0, 2, 20, 55, height, 24, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 2), - 0, 0, 2, 20, 55, height, 24, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 2), 0, + 0, 2, 20, 55, height, 24, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 3), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 3), 0, + 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 36, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -760,36 +760,36 @@ namespace SingleRailRC } static void Track90DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpTo90DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track90DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 4), 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 4), 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 5), 0, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 5), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 6), 0, 0, 2, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 6), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 7), 0, 0, 32, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 7), 0, 0, 32, 20, 3, height, 0, 6, height + 8); break; } @@ -808,7 +808,7 @@ namespace SingleRailRC } static void Track60DegDownTo90DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -818,23 +818,23 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 6), - 0, 0, 2, 20, 31, height, 24, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 6), 0, + 0, 2, 20, 31, height, 24, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 7), - 0, 0, 32, 20, 3, height, 0, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 7), 0, + 0, 32, 20, 3, height, 0, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 4), - 0, 0, 32, 20, 3, height, 0, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 4), 0, + 0, 32, 20, 3, height, 0, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 5), - 0, 0, 2, 20, 31, height, 24, 6, height + 8); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL + 5), 0, + 0, 2, 20, 31, height, 24, 6, height + 8); break; } if (direction == 0 || direction == 3) @@ -851,7 +851,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -861,31 +861,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 0), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 0), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 3), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 3), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 6), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 6), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 9), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 9), + 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -903,26 +899,23 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 1), 0, 0, 16, 16, 3, - height, 16, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 1), + 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 4), 0, 0, 16, 16, 3, - height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 4), + 0, 0, 16, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 7), 0, 0, 16, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 7), + 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 10), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 10), 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -936,31 +929,28 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 2), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 2), + 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 5), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 5), + 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 8), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 8), + 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 11), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE + 11), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -979,7 +969,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -987,7 +977,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -998,30 +988,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 0), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 5), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 10), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 10), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 15), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1040,25 +1030,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 1), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 1), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 6), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 6), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 11), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 11), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 16), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 16), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1075,25 +1065,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 2), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 2), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 7), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 7), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 12), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 12), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 17), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 17), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1111,25 +1101,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 3), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 3), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 8), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 8), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 13), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 13), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 18), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 18), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -1146,30 +1136,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 4), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 4), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 9), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 9), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 14), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 14), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 19), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE + 19), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1188,7 +1178,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1196,7 +1186,7 @@ namespace SingleRailRC } static void TrackLeftEighthToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1206,31 +1196,28 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 0), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 0), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 4), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 4), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 8), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 8), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 12), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1244,26 +1231,23 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 1), 0, 0, 32, 16, 3, - height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 1), + 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 5), 0, 0, 34, 16, 3, - height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 5), + 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 9), 0, 0, 32, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 9), + 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 13), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 13), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -1279,26 +1263,24 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 2), 0, 0, 16, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 2), + 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 6), 0, 0, 16, 16, 3, - height, 16, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 6), + 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 10), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 10), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 14), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 14), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -1319,35 +1301,33 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 3), 0, 0, 16, 16, 3, - height, 16, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 3), + 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 7), 0, 0, 16, 18, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 7), + 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 11), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 11), 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 15), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 15), 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1361,7 +1341,7 @@ namespace SingleRailRC } static void TrackRightEighthToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1372,30 +1352,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 16), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 16), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 20), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 20), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 24), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 24), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 28), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 28), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1410,25 +1390,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 17), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 17), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 21), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 21), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 25), 0, 0, 34, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 25), 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 29), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 29), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -1445,25 +1425,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 18), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 18), 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 22), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 22), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 26), 0, 0, 28, 28, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 26), 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 30), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 30), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -1485,34 +1465,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 19), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 19), 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 23), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 23), 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 27), 0, 0, 16, 18, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 27), 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 31), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE + 31), 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1526,7 +1506,7 @@ namespace SingleRailRC } static void TrackLeftEighthToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1534,7 +1514,7 @@ namespace SingleRailRC } static void TrackRightEighthToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1542,7 +1522,7 @@ namespace SingleRailRC } static void TrackDiagFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1555,7 +1535,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1567,8 +1547,8 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 3), -16, -16, - 32, 32, 3, height, -16, -16, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 3), -16, -16, 32, + 32, 3, height, -16, -16, height); break; } } @@ -1585,7 +1565,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1597,8 +1577,8 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 0), -16, -16, - 32, 32, 3, height, -16, -16, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 0), -16, -16, 32, + 32, 3, height, -16, -16, height); break; } } @@ -1615,7 +1595,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1627,8 +1607,8 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 2), -16, -16, - 32, 32, 3, height, -16, -16, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 2), -16, -16, 32, + 32, 3, height, -16, -16, height); break; } } @@ -1644,23 +1624,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1670,23 +1650,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 1), -16, -16, - 32, 32, 3, height, -16, -16, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_DIAGONAL + 1), -16, -16, 32, + 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1699,7 +1679,7 @@ namespace SingleRailRC } static void TrackDiag25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1712,7 +1692,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1724,7 +1704,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 11), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1742,7 +1722,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1754,7 +1734,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 8), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1772,7 +1752,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1784,7 +1764,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 10), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1801,23 +1781,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1827,23 +1807,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1856,7 +1836,7 @@ namespace SingleRailRC } static void TrackDiag25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1869,7 +1849,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1881,7 +1861,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 7), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1899,7 +1879,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1911,7 +1891,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 4), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1929,7 +1909,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1941,7 +1921,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 6), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1958,23 +1938,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1984,23 +1964,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 5), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2013,7 +1993,7 @@ namespace SingleRailRC } static void TrackDiagFlatTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2026,7 +2006,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2038,7 +2018,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 3), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2056,7 +2036,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2068,7 +2048,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 0), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2086,7 +2066,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2098,7 +2078,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 2), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2115,23 +2095,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2141,23 +2121,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2170,7 +2150,7 @@ namespace SingleRailRC } static void TrackDiag25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2183,7 +2163,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 9), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2195,7 +2175,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 9), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2213,7 +2193,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2225,7 +2205,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 10), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2243,7 +2223,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2255,7 +2235,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 8), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2272,23 +2252,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2298,23 +2278,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 11), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2327,7 +2307,7 @@ namespace SingleRailRC } static void TrackDiagFlatTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2340,7 +2320,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2352,7 +2332,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 5), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2369,7 +2349,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2381,7 +2361,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 6), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2398,7 +2378,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2410,7 +2390,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 4), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2426,23 +2406,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2452,23 +2432,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 7), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2482,7 +2462,7 @@ namespace SingleRailRC } static void TrackDiag25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2495,7 +2475,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2507,7 +2487,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2525,7 +2505,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2537,7 +2517,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 2), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2555,7 +2535,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2567,7 +2547,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 0), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2584,23 +2564,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2610,23 +2590,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 3), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2639,7 +2619,7 @@ namespace SingleRailRC } static void TrackDiag60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2652,7 +2632,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2664,7 +2644,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 11), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2682,7 +2662,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2694,7 +2674,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 8), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2712,7 +2692,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2724,7 +2704,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 10), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2741,23 +2721,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 9), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2767,23 +2747,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 9), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 38, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 38, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2796,7 +2776,7 @@ namespace SingleRailRC } static void TrackDiag25DegUpTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2809,7 +2789,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2821,7 +2801,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 3), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2839,7 +2819,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2851,7 +2831,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 0), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2869,7 +2849,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2881,7 +2861,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 2), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2898,23 +2878,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2924,23 +2904,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 1), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2953,7 +2933,7 @@ namespace SingleRailRC } static void TrackDiag60DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2966,7 +2946,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2978,7 +2958,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 7), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2996,7 +2976,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3008,7 +2988,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 4), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3026,7 +3006,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3038,7 +3018,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 6), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3055,23 +3035,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 5), -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3081,23 +3061,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 5), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 5), -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3110,7 +3090,7 @@ namespace SingleRailRC } static void TrackDiag60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3123,7 +3103,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 9), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3135,7 +3115,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 9), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3153,7 +3133,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3165,7 +3145,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 10), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3183,7 +3163,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3195,7 +3175,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 8), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 8), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3212,23 +3192,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3238,23 +3218,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 11), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 11), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3267,7 +3247,7 @@ namespace SingleRailRC } static void TrackDiag25DegDownTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3280,7 +3260,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 5), -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -3292,7 +3272,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 5), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 5), -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -3310,7 +3290,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3322,7 +3302,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 6), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3340,7 +3320,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3352,7 +3332,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 4), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3369,23 +3349,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3395,23 +3375,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 7), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3424,7 +3404,7 @@ namespace SingleRailRC } static void TrackDiag60DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3437,7 +3417,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3449,7 +3429,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 1), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 1), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3467,7 +3447,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3479,7 +3459,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 2), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3497,7 +3477,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3509,7 +3489,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 0), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3526,23 +3506,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3552,23 +3532,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 3), -16, -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3581,41 +3561,41 @@ namespace SingleRailRC } static void TrackFlatToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 0), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 0), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 1), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 1), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 2), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 2), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 3), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 3), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 4), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 5), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -3624,41 +3604,41 @@ namespace SingleRailRC } static void TrackFlatToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 6), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 7), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 8), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 8), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 9), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 9), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 10), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 10), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 11), - 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 11), 0, + 0, 32, 1, 26, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -3667,55 +3647,55 @@ namespace SingleRailRC } static void TrackLeftBankToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToRightBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToLeftBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 12), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 12), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 13), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 13), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 14), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 14), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 15), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 15), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 16), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 16), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 17), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 17), 0, + 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3731,41 +3711,41 @@ namespace SingleRailRC } static void TrackRightBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 18), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 18), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 19), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 19), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 20), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 20), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 21), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 21), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 22), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 22), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 23), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 23), 0, + 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3781,41 +3761,41 @@ namespace SingleRailRC } static void Track25DegUpToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 24), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 24), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 25), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 25), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 26), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 26), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 27), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 27), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 28), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 28), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 29), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 29), 0, + 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3831,41 +3811,41 @@ namespace SingleRailRC } static void Track25DegUpToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 30), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 30), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 31), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 31), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 32), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 32), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 33), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 33), 0, + 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 34), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 34), 0, + 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 35), - 0, 0, 32, 1, 34, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 35), 0, + 0, 32, 1, 34, height, 0, 27, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3881,63 +3861,63 @@ namespace SingleRailRC } static void TrackLeftBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToRightBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToLeftBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBankTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBankTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 36), - 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 36), 0, + 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 37), - 0, 0, 32, 1, 26, height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 37), 0, + 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 38), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 38), 0, + 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 39), - 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION + 39), 0, + 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -3946,14 +3926,14 @@ namespace SingleRailRC } static void TrackRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackDiagFlatToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3964,7 +3944,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -3979,11 +3959,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 1), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -3998,7 +3978,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4012,23 +3992,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4040,7 +4020,7 @@ namespace SingleRailRC } static void TrackDiagFlatToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4051,7 +4031,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 9), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4066,7 +4046,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4081,11 +4061,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 8), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4099,23 +4079,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4127,7 +4107,7 @@ namespace SingleRailRC } static void TrackDiagLeftBankToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4138,7 +4118,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 6), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 6), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4153,11 +4133,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 7), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 7), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 8), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 8), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4172,7 +4152,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 5), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 5), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4186,23 +4166,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 9), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 9), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4214,7 +4194,7 @@ namespace SingleRailRC } static void TrackDiagRightBankToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4225,7 +4205,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 2), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 2), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4240,7 +4220,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 3), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 3), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4255,11 +4235,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 0), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 0), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 1), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 1), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -4273,23 +4253,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 4), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 4), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4301,7 +4281,7 @@ namespace SingleRailRC } static void TrackDiagLeftBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4312,7 +4292,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 14), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 14), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4327,11 +4307,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 11), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4346,7 +4326,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 13), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 13), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4360,23 +4340,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 12), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 12), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4388,7 +4368,7 @@ namespace SingleRailRC } static void TrackDiagRightBankTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4399,7 +4379,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 19), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 19), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4414,7 +4394,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 15), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 15), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4429,11 +4409,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 17), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 17), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 18), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 18), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4447,23 +4427,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 16), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 16), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4475,7 +4455,7 @@ namespace SingleRailRC } static void TrackDiag25DegUpToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4486,7 +4466,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 24), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 24), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4501,11 +4481,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 20), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 20), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 21), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 21), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4520,7 +4500,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 23), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 23), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4534,23 +4514,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 22), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 22), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4562,7 +4542,7 @@ namespace SingleRailRC } static void TrackDiag25DegUpToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4573,7 +4553,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 29), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 29), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4588,7 +4568,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 25), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 25), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4603,11 +4583,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 27), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 27), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 28), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 28), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4621,23 +4601,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 26), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 26), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4649,7 +4629,7 @@ namespace SingleRailRC } static void TrackDiagLeftBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4660,7 +4640,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 26), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 26), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4674,11 +4654,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 27), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 27), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 28), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 28), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4692,7 +4672,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 25), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 25), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4705,23 +4685,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 29), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 29), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4734,7 +4714,7 @@ namespace SingleRailRC } static void TrackDiagRightBankTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4745,7 +4725,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 22), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 22), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4759,7 +4739,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 23), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 23), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4773,11 +4753,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 20), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 20), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 21), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 21), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4790,23 +4770,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 24), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 24), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4819,7 +4799,7 @@ namespace SingleRailRC } static void TrackDiag25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4830,7 +4810,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 16), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 16), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4845,11 +4825,11 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 17), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 17), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 18), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 18), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4864,7 +4844,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 15), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 15), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4878,23 +4858,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 19), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 19), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4906,7 +4886,7 @@ namespace SingleRailRC } static void TrackDiag25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4917,7 +4897,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 12), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 12), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4932,7 +4912,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 13), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 13), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -4947,11 +4927,11 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 10), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 10), -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 11), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 11), -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -4965,23 +4945,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 14), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 14), -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4993,7 +4973,7 @@ namespace SingleRailRC } static void TrackDiagLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5004,7 +4984,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 33), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 33), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5019,7 +4999,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 30), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 30), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -5034,7 +5014,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 32), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 32), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5048,23 +5028,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 31), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 31), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5076,7 +5056,7 @@ namespace SingleRailRC } static void TrackDiagRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5087,7 +5067,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 31), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 31), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5102,7 +5082,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 32), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 32), -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5117,7 +5097,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 30), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 30), -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -5131,23 +5111,23 @@ namespace SingleRailRC { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 33), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BANK_TRANSITION_DIAGONAL + 33), -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5159,7 +5139,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn3Bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5170,34 +5150,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 0), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 0), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 1), 0, 0, 32, - 1, 26, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 1), 0, 0, 32, 1, + 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 4), 0, 0, 32, - 1, 26, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 4), 0, 0, 32, 1, + 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 7), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 11), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5216,25 +5196,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 2), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 2), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 5), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 5), 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 8), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 8), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 12), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 12), 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -5249,34 +5229,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 3), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 3), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 6), 0, 0, 1, - 32, 26, height, 27, 0, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 6), 0, 0, 1, 32, + 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 9), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 9), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 10), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 10), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 13), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_CURVE_BANKED + 13), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5295,7 +5275,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn3Bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -5303,7 +5283,7 @@ namespace SingleRailRC } static void TrackBankedLeftQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5314,34 +5294,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 0), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 0), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 1), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 1), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 6), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 6), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 11), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 17), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 17), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5360,25 +5340,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 2), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 2), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 7), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 7), 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 12), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 12), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 18), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 18), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -5395,25 +5375,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 3), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 3), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 8), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 8), 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 13), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 13), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 19), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 19), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -5431,25 +5411,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 4), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 4), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 9), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 9), 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 14), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 14), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 20), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 20), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -5466,34 +5446,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 5), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 5), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 10), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 10), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 15), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 15), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 16), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 16), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 21), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_CURVE_BANKED + 21), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5512,7 +5492,7 @@ namespace SingleRailRC } static void TrackBankedRightQuarterTurn5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -5520,7 +5500,7 @@ namespace SingleRailRC } static void TrackLeftEighthBankToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5531,30 +5511,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 0), 0, 0, 32, - 1, 26, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 0), 0, 0, 32, 1, + 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 4), 0, 0, 32, - 1, 26, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 4), 0, 0, 32, 1, + 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 8), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 12), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5569,25 +5549,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 1), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 1), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 5), 0, 0, 34, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 5), 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 9), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 9), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 13), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 13), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -5604,25 +5584,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 2), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 2), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 6), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 6), 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 10), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 10), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 14), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 14), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -5644,34 +5624,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 3), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 3), 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 7), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 7), 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 11), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 11), 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 15), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 15), 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5685,7 +5665,7 @@ namespace SingleRailRC } static void TrackRightEighthBankToDiag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5696,30 +5676,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 16), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 16), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 20), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 20), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 24), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 24), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 28), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 28), 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5734,25 +5714,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 17), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 17), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 21), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 21), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 25), 0, 0, 34, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 25), 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 29), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 29), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -5769,25 +5749,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 18), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 18), 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 22), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 22), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 26), 0, 0, 28, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 26), 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 30), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 30), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -5809,34 +5789,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 19), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 19), 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 23), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 23), 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 27), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 27), 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 31), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_CURVE_BANKED + 31), 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5850,7 +5830,7 @@ namespace SingleRailRC } static void TrackLeftEighthBankToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5858,7 +5838,7 @@ namespace SingleRailRC } static void TrackRightEighthBankToOrthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5866,7 +5846,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5877,30 +5857,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 0), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 0), 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 2), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 2), 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 4), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 4), 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 6), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 6), 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -5922,30 +5902,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 1), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 1), 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 3), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 3), 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 5), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 5), 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 7), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 7), 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -5964,7 +5944,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5975,30 +5955,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 8), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 8), 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 10), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 10), 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 12), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 12), 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 14), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 14), 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -6020,34 +6000,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 9), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 9), 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 11), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 11), 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 13), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 13), 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 15), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE + 15), 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -6068,7 +6048,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -6076,7 +6056,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -6084,7 +6064,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn525DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6095,30 +6075,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 0), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 5), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 10), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 10), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 15), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -6137,25 +6117,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 1), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 1), 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 6), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 6), 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 11), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 11), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 16), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 16), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -6172,25 +6152,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 2), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 2), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 7), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 7), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 12), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 12), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 17), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 17), 0, 0, 16, 16, 3, height); break; } @@ -6208,25 +6188,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 3), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 3), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 8), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 8), 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 13), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 13), 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 18), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 18), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -6243,30 +6223,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 4), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 4), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 9), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 9), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 14), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 14), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 19), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 19), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -6285,7 +6265,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn525DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6296,30 +6276,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 20), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 20), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 25), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 25), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 30), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 30), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 35), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 35), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -6338,25 +6318,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 21), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 21), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 26), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 26), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 31), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 31), 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 36), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 36), 0, 0, 32, 16, 3, height); break; } @@ -6373,25 +6353,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 22), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 22), 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 27), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 27), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 32), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 32), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 37), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 37), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -6409,25 +6389,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 23), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 23), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 28), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 28), 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 33), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 33), 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 38), 0, 0, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 38), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -6444,30 +6424,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 24), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 24), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 29), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 29), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 34), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 34), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 39), 0, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE + 39), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -6486,7 +6466,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn525DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -6494,7 +6474,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn525DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -6502,41 +6482,41 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn160DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 0), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 0), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 1), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 1), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 2), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 2), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 3), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 3), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 4), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 4), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 5), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 5), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 6), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 6), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 7), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 7), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } @@ -6546,41 +6526,41 @@ namespace SingleRailRC } static void TrackRightQuarterTurn160DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 8), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 8), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 9), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 9), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 10), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 10), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 11), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 11), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 12), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 12), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 13), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 13), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 14), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 14), 0, 0, 28, 28, 3, height, 2, 2, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 15), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_STEEP_SMALL_CURVE + 15), 0, 0, 28, 28, 1, height, 2, 2, height + 99); break; } @@ -6590,21 +6570,21 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn160DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightQuarterTurn160DegUp(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); } static void TrackRightQuarterTurn160DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftQuarterTurn160DegUp(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); } static void TrackLeftQuarterTurn190DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6615,34 +6595,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 0), 0, 0, 2, 20, - 63, height, 4, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 0), 0, 0, 2, 20, 63, + height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 1), 0, 0, 2, 20, - 63, height, 4, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 1), 0, 0, 2, 20, 63, + height, 4, 6, height + 8); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 2), 0, 0, 2, 20, - 63, height, 24, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 2), 0, 0, 2, 20, 63, + height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 3), 0, 0, 2, 20, - 63, height, 24, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 3), 0, 0, 2, 20, 63, + height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 4), 0, 0, 2, 20, - 63, height, 4, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 4), 0, 0, 2, 20, 63, + height, 4, 6, height + 8); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 5), 0, 0, 2, 20, - 63, height, 24, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 5), 0, 0, 2, 20, 63, + height, 24, 6, height + 8); break; } paint_util_set_vertical_tunnel(session, height + 96); @@ -6656,7 +6636,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn190DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6667,33 +6647,33 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 6), 0, 0, 2, 20, - 63, height, 4, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 6), 0, 0, 2, 20, 63, + height, 4, 6, height + 8); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 7), 0, 0, 2, 20, - 63, height, 24, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 7), 0, 0, 2, 20, 63, + height, 24, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 8), 0, 0, 2, 20, - 63, height, 24, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 8), 0, 0, 2, 20, 63, + height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 9), 0, 0, 2, 20, - 63, height, 4, 6, height + 8); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 9), 0, 0, 2, 20, 63, + height, 4, 6, height + 8); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 10), 0, 0, 2, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 10), 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 11), 0, 0, 2, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_VERTICAL_TWIST + 11), 0, 0, 2, 20, 63, height, 4, 6, height + 8); break; } @@ -6708,21 +6688,21 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn190DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightQuarterTurn190DegUp(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); } static void TrackRightQuarterTurn190DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftQuarterTurn190DegUp(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); } static void Track25DegUpToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6730,35 +6710,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 0), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 1), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 1), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 2), 0, 0, 32, 1, 34, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 2), 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 3), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 4), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -6774,7 +6754,7 @@ namespace SingleRailRC } static void Track25DegUpToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6782,35 +6762,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 5), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 6), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 7), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 7), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 8), 0, 0, 32, 1, 34, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 8), 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 9), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 9), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -6826,7 +6806,7 @@ namespace SingleRailRC } static void TrackLeftBanked25DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6834,35 +6814,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 10), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 10), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 11), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 11), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 12), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 12), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 13), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 13), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 14), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 14), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -6878,7 +6858,7 @@ namespace SingleRailRC } static void TrackRightBanked25DegUpTo25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6886,35 +6866,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 15), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 15), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 16), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 16), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 17), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 17), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 18), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 18), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 19), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 19), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -6930,35 +6910,35 @@ namespace SingleRailRC } static void TrackLeftBanked25DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownTo25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpTo25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankedFlatToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6966,31 +6946,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 20), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 20), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 21), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 21), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 22), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 22), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 23), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 23), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7006,7 +6986,7 @@ namespace SingleRailRC } static void TrackRightBankedFlatToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7014,31 +6994,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 24), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 24), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 25), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 25), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 26), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 26), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 27), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 27), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7054,7 +7034,7 @@ namespace SingleRailRC } static void TrackLeftBanked25DegUpToLeftBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7062,31 +7042,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 28), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 28), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 29), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 29), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 30), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 30), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 31), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 31), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7102,7 +7082,7 @@ namespace SingleRailRC } static void TrackRightBanked25DegUpToRightBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7110,31 +7090,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 32), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 32), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 33), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 33), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 34), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 34), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 35), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 35), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7150,35 +7130,35 @@ namespace SingleRailRC } static void TrackLeftBankedFlatToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpToRightBankedFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBankedFlatToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpToLeftBankedFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBanked25DegDownToLeftBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBankedFlatToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownToRightBankedFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBankedFlatToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegUpLeftBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7186,31 +7166,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 36), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 36), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 37), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 37), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 38), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 38), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 39), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 39), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7226,7 +7206,7 @@ namespace SingleRailRC } static void Track25DegUpRightBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7234,31 +7214,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 40), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 40), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 41), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 41), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 42), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 42), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 43), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 43), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7274,21 +7254,21 @@ namespace SingleRailRC } static void Track25DegDownLeftBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpRightBanked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track25DegDownRightBanked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track25DegUpLeftBanked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatToLeftBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7296,35 +7276,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 44), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 44), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 45), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 45), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 46), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 46), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 47), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 47), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 48), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 48), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7340,7 +7320,7 @@ namespace SingleRailRC } static void TrackFlatToRightBanked25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7348,35 +7328,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 49), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 49), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 50), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 50), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 51), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 51), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 52), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 52), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 53), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 53), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7392,7 +7372,7 @@ namespace SingleRailRC } static void TrackLeftBanked25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7400,35 +7380,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 54), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 54), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 55), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 55), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 56), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 56), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 57), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 57), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 58), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 58), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7444,7 +7424,7 @@ namespace SingleRailRC } static void TrackRightBanked25DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -7452,35 +7432,35 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 59), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 59), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 60), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 60), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 61), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 61), 0, 0, 32, 20, 3, + height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 62), 0, 0, 32, 1, - 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 62), 0, 0, 32, 1, 34, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 63), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SLOPE_BANK_TRANSITION + 63), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -7496,35 +7476,35 @@ namespace SingleRailRC } static void TrackFlatToLeftBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBanked25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackFlatToRightBanked25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBanked25DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBanked25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToRightBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBanked25DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatToLeftBanked25DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackLeftBankedQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7535,30 +7515,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 0), 0, - 6, 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 0), 0, 6, + 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 2), 0, - 6, 32, 1, 34, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 2), 0, 6, + 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 4), 0, - 6, 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 4), 0, 6, + 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 6), 0, - 6, 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 6), 0, 6, + 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -7580,30 +7560,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 1), 6, - 0, 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 1), 6, 0, + 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 3), 6, - 0, 1, 32, 34, height, 27, 0, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 3), 6, 0, + 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 5), 6, - 0, 1, 32, 34, height, 27, 0, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 5), 6, 0, + 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 7), 6, - 0, 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 7), 6, 0, + 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -7622,7 +7602,7 @@ namespace SingleRailRC } static void TrackRightBankedQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7633,30 +7613,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 8), 0, - 6, 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 8), 0, 6, + 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 10), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 10), 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 12), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 12), 0, 6, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 14), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 14), 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -7678,34 +7658,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 9), 6, - 0, 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 9), 6, 0, + 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 11), 6, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 11), 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 13), 6, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 13), 6, 0, 1, 32, 34, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 15), 6, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_SMALL_CURVE_BANKED + 15), 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -7726,7 +7706,7 @@ namespace SingleRailRC } static void TrackLeftBankedQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7734,7 +7714,7 @@ namespace SingleRailRC } static void TrackRightBankedQuarterTurn3Tile25DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -7742,7 +7722,7 @@ namespace SingleRailRC } static void TrackLeftBankedQuarterTurn525DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7753,30 +7733,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 0), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 5), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 5), 0, 0, 32, 1, 34, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 10), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 10), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 15), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -7795,25 +7775,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 1), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 1), 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 6), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 6), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 11), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 11), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 16), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 16), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -7830,25 +7810,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 2), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 2), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 7), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 7), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 12), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 12), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 17), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 17), 0, 0, 16, 16, 3, height); break; } @@ -7866,25 +7846,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 3), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 3), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 8), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 8), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 13), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 13), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 18), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 18), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -7901,30 +7881,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 4), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 4), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 9), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 9), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 14), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 14), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 19), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 19), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -7943,7 +7923,7 @@ namespace SingleRailRC } static void TrackRightBankedQuarterTurn525DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7954,30 +7934,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 20), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 20), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 25), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 25), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 30), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 30), 0, 0, 32, 1, 34, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 35), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 35), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -7996,25 +7976,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 21), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 21), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 26), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 26), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 31), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 31), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 36), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 36), 0, 0, 32, 16, 3, height); break; } @@ -8031,25 +8011,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 22), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 22), 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 27), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 27), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 32), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 32), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 37), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 37), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -8067,25 +8047,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 23), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 23), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 28), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 28), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 33), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 33), 0, 0, 1, 1, 34, height, 30, 30, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 38), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 38), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -8102,30 +8082,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 24), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 24), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 29), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 29), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 34), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 34), 0, 0, 1, 32, 34, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 39), 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_MEDIUM_CURVE_BANKED + 39), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8144,7 +8124,7 @@ namespace SingleRailRC } static void TrackLeftBankedQuarterTurn525DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8152,7 +8132,7 @@ namespace SingleRailRC } static void TrackRightBankedQuarterTurn525DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -8160,7 +8140,7 @@ namespace SingleRailRC } static void TrackSBendLeft( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8170,27 +8150,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 0), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 4), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 3), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 7), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -8205,26 +8185,26 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 1), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 1), 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 5), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 5), 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height - 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height - 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 2), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 2), 0, 0, 32, 26, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 6), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 6), 0, 0, 32, 26, 3, height, 0, 6, height); break; } @@ -8240,27 +8220,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 2), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 2), 0, 0, 32, 26, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 6), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 6), 0, 0, 32, 26, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 1), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 1), 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 5), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 5), 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height - 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height - 1, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8275,27 +8255,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 3), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 7), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 0), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 4), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -8314,7 +8294,7 @@ namespace SingleRailRC } static void TrackSBendRight( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8324,27 +8304,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 8), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 12), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 11), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 15), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -8359,26 +8339,26 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 9), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 9), 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 13), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 13), 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 10), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 10), 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 14), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 14), 0, 0, 32, 26, 3, height); break; } @@ -8394,27 +8374,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 10), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 10), 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 14), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 14), 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 9), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 9), 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 13), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 13), 0, 0, 32, 26, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8429,27 +8409,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 11), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 15), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 15), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 8), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 12), 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_S_BEND + 12), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -8468,7 +8448,7 @@ namespace SingleRailRC } static void TrackLeftHalfBankedHelixUpSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8478,35 +8458,31 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 0), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 0), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 1), 0, 0, 32, 1, 26, - height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 1), + 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 4), 0, 0, 32, 1, 26, - height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 4), + 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 7), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 7), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 11), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -8525,26 +8501,23 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 2), 0, 0, 16, 16, 3, - height, 16, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 2), + 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 5), 0, 0, 16, 16, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 5), + 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 8), 0, 0, 16, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 8), + 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 12), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 12), 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -8558,35 +8531,32 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 3), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 3), + 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 6), 0, 0, 1, 32, 26, - height, 27, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 6), + 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 9), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 9), + 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 10), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 10), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 13), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 13), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8608,34 +8578,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 11), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 11), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 0), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 0), + 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 1), 0, 0, 1, 32, 26, - height, 27, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 1), + 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 4), 0, 0, 1, 32, 26, - height, 27, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 4), + 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 7), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 7), + 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8660,26 +8626,23 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 12), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 12), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 2), 0, 0, 16, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 2), + 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 5), 0, 0, 16, 16, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 5), + 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 8), 0, 0, 16, 16, 3, - height, 16, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 8), + 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -8693,34 +8656,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 13), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 13), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 3), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 3), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 6), 0, 0, 32, 1, 26, - height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 6), + 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 9), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 9), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 10), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 10), 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -8735,7 +8695,7 @@ namespace SingleRailRC } static void TrackRightHalfBankedHelixUpSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8746,34 +8706,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 14), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 14), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 17), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 17), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 21), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 21), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 24), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 24), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 25), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 25), 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -8793,25 +8753,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 15), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 15), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 18), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 18), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 22), 0, 0, 16, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 22), 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 26), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 26), 0, 0, 16, 16, 3, height, 16, 0, height); break; } @@ -8826,34 +8786,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 16), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 16), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 19), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 19), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 20), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 20), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 23), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 23), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 27), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 27), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -8875,34 +8835,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 17), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 17), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 21), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 21), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 24), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 24), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 25), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 25), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 14), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 14), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -8927,25 +8887,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 18), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 18), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 22), 0, 0, 16, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 22), 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 26), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 26), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 15), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 15), 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -8960,34 +8920,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 19), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 19), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 20), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 20), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 23), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 23), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 27), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 27), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 16), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_HELIX + 16), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -9002,7 +8962,7 @@ namespace SingleRailRC } static void TrackLeftHalfBankedHelixDownSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -9015,7 +8975,7 @@ namespace SingleRailRC } static void TrackRightHalfBankedHelixDownSmall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -9028,7 +8988,7 @@ namespace SingleRailRC } static void TrackLeftHalfBankedHelixUpLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9038,35 +8998,32 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 0), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 0), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 1), 0, 0, 32, 1, 26, - height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 1), + 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 6), 0, 0, 32, 1, 26, - height, 0, 27, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 6), + 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 11), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 11), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 17), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 17), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -9085,26 +9042,24 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 2), 0, 0, 32, 16, 3, - height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 2), + 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 7), 0, 0, 32, 16, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 7), + 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 12), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 12), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 18), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 18), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -9120,26 +9075,24 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 3), 0, 0, 16, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 3), + 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 8), 0, 0, 16, 16, 1, - height, 16, 16, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 8), + 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 13), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 13), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 19), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 19), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -9156,26 +9109,24 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 4), 0, 0, 16, 32, 3, - height, 16, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 4), + 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 9), 0, 0, 16, 32, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 9), + 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 14), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 14), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 20), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 20), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -9191,35 +9142,34 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 5), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 5), + 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 10), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 10), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 15), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 15), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 16), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 16), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 21), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 21), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -9241,34 +9191,31 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 17), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 17), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 0), 0, 0, 20, 32, 3, - height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 0), + 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 1), 0, 0, 1, 32, 26, - height, 27, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 1), + 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 6), 0, 0, 1, 32, 26, - height, 27, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 6), + 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 11), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 11), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -9293,25 +9240,23 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 18), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 18), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 2), 0, 0, 16, 32, 3, - height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 2), + 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 7), 0, 0, 16, 32, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 7), + 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 12), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 12), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -9328,25 +9273,23 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 19), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 19), 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 3), 0, 0, 16, 16, 3, - height, 16, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 3), + 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 8), 0, 0, 16, 16, 1, - height, 16, 16, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 8), + 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 13), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 13), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -9364,25 +9307,23 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 20), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 20), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 4), 0, 0, 32, 16, 3, - height, 0, 16, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 4), + 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 9), 0, 0, 32, 16, 1, - height, 0, 0, height + 27); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 9), + 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 14), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 14), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -9399,34 +9340,33 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 21), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 21), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 5), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 5), + 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 10), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 10), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 15), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 15), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 16), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 16), 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -9440,7 +9380,7 @@ namespace SingleRailRC } } static void TrackRightHalfBankedHelixUpLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9451,34 +9391,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 22), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 22), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 27), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 27), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 33), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 33), 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 38), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 38), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 39), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 39), 0, 0, 32, 1, 26, height, 0, 27, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -9498,25 +9438,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 23), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 23), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 28), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 28), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 34), 0, 0, 32, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 34), 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 40), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 40), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -9533,25 +9473,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 24), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 24), 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 29), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 29), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 35), 0, 0, 16, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 35), 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 41), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 41), 0, 0, 16, 16, 3, height, 0, 16, height); break; } @@ -9569,25 +9509,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 25), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 25), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 30), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 30), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 36), 0, 0, 16, 32, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 36), 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 42), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 42), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -9604,38 +9544,38 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 26), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 26), 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 31), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 31), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 32), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 32), 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 37), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 37), 0, 0, 1, 32, 26, height, 27, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 43), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 43), 0, 0, 20, 32, 3, height, 6, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -9659,34 +9599,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 27), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 27), 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 33), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 33), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 38), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 38), 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 39), 0, 0, 1, 32, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 39), 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 22), 0, 0, 20, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 22), 0, 0, 20, 32, 3, height, 6, 0, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -9711,25 +9651,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 28), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 28), 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 34), 0, 0, 16, 32, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 34), 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 40), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 40), 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 23), 0, 0, 16, 32, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 23), 0, 0, 16, 32, 3, height, 16, 0, height); break; } @@ -9746,25 +9686,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 29), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 29), 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 35), 0, 0, 16, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 35), 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 41), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 41), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 24), 0, 0, 16, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 24), 0, 0, 16, 16, 3, height, 0, 0, height); break; } @@ -9782,25 +9722,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 30), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 30), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 36), 0, 0, 32, 16, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 36), 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 42), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 42), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 25), 0, 0, 32, 16, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 25), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -9817,38 +9757,38 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 31), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 31), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 32), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 32), 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 37), 0, 0, 32, 1, 26, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 37), 0, 0, 32, 1, 26, height, 0, 27, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 43), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 43), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 26), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HELIX + 26), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9865,7 +9805,7 @@ namespace SingleRailRC } static void TrackLeftHalfBankedHelixDownLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -9878,7 +9818,7 @@ namespace SingleRailRC } static void TrackRightHalfBankedHelixDownLarge( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -9891,7 +9831,7 @@ namespace SingleRailRC } static void TrackLeftBarrelRollUpToDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9901,51 +9841,47 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 0), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 0), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 1), 0, 0, 32, 20, 0, - height, 0, 6, height + 28); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 1), + 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 6), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 6), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 7), 0, 0, 32, 20, 0, - height, 0, 6, height + 28); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 7), + 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 12), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 12), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 13), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 13), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 18), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 18), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 19), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 19), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -9963,42 +9899,38 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 2), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 2), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 3), 0, 0, 32, 20, 0, - height, 0, 6, height + 28); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 3), + 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 8), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 8), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 9), 0, 0, 32, 20, 0, - height, 0, 6, height + 28); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 9), + 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 14), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 14), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 15), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 15), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 20), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 20), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 21), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 21), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -10014,42 +9946,40 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 4), 0, 0, 32, 20, 3, - height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 4), + 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 5), 0, 0, 32, 20, 0, - height, 0, 6, height + 44); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 5), + 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 10), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 10), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 11), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 11), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 16), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 16), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 17), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 17), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 22), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 22), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 23), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 23), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -10072,7 +10002,7 @@ namespace SingleRailRC } static void TrackRightBarrelRollUpToDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10083,50 +10013,50 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 24), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 24), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 25), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 25), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 30), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 30), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 31), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 31), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 36), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 36), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 37), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 37), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 42), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 42), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 43), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 43), 0, 0, 32, 20, 0, height, 0, 6, height + 28); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height + 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height + 1, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -10145,41 +10075,41 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 26), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 26), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 27), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 27), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 32), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 32), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 33), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 33), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 38), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 38), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 39), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 39), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 44), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 44), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 45), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 45), 0, 0, 32, 20, 0, height, 0, 6, height + 28); break; } @@ -10196,41 +10126,41 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 28), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 28), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 29), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 29), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 34), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 34), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 35), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 35), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 40), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 40), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 41), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 41), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 46), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 46), 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 47), 0, 0, 32, 20, 0, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BARREL_ROLL + 47), 0, 0, 32, 20, 0, height, 0, 6, height + 44); break; } @@ -10253,21 +10183,21 @@ namespace SingleRailRC } static void TrackLeftBarrelRollDownToUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftBarrelRollUpToDown(session, ride, 2 - trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackRightBarrelRollDownToUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightBarrelRollUpToDown(session, ride, 2 - trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackHalfLoopUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10277,27 +10207,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 0), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 0), 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 4), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 4), 0, 6, 32, 20, 11, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 8), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 8), 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 12), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 12), 0, 6, 32, 20, 7, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -10311,31 +10241,31 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 1), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 1), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 5), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 5), 0, 14, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 9), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 9), 0, 6, 3, 20, 63, height, 28, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 13), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 13), 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10346,22 +10276,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 2), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 2), 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 6), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 6), 12, 0, 3, 16, 119, height, 12, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 10), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 10), 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 14), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 14), 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -10377,22 +10307,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 3), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 3), 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 7), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 7), 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 11), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 11), 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 15), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 15), 0, 16, 32, 12, 3, height + 32); break; } @@ -10408,14 +10338,14 @@ namespace SingleRailRC } static void TrackHalfLoopDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackHalfLoopUp(session, ride, 3 - trackSequence, direction, height, trackElement); } static void TrackBrakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -10423,19 +10353,19 @@ namespace SingleRailRC case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BRAKE + 0), 0, 0, 32, - 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BRAKE + 0), 0, 0, 32, 20, + 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BRAKE + 1), 0, 0, 32, - 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BRAKE + 1), 0, 0, 32, 20, + 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -10444,7 +10374,7 @@ namespace SingleRailRC } static void TrackOnRidePhoto( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -10453,44 +10383,44 @@ namespace SingleRailRC PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 0), 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated( session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, 20, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT + 1), 0, 0, 32, 20, 0, height, 0, 6, height + 3); break; } @@ -10501,7 +10431,7 @@ namespace SingleRailRC } static void TrackFlatTo60DegUpLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10512,32 +10442,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 0), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 4), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 4), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 8), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 8), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 12), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 12), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10553,32 +10483,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 1), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 1), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 5), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 5), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 9), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 9), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 13), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 13), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10590,32 +10520,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 2), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 2), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 6), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 6), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 10), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 10), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 14), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 14), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10627,32 +10557,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 3), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 3), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 7), 0, 0, 32, 1, 98, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 7), 0, 0, 32, 1, 98, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 11), 0, 0, 32, 1, - 98, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 11), 0, 0, 32, 1, 98, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 15), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 15), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 19, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 19, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -10670,7 +10600,7 @@ namespace SingleRailRC } } static void Track60DegUpToFlatLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10681,32 +10611,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 16), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 16), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 20), 0, 0, 32, 1, - 98, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 20), 0, 0, 32, 1, 98, + height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 24), 0, 0, 32, 1, - 98, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 24), 0, 0, 32, 1, 98, + height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 28), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 28), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 24, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -10722,32 +10652,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 17), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 17), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 21), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 21), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 25), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 25), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 29), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 29), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 18, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 18, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10759,32 +10689,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 18), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 18), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 22), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 22), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 26), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 26), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 30), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 30), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 13, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 13, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); @@ -10796,32 +10726,32 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 19), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 19), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 23), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 23), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 27), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 27), 0, 0, 32, 20, 3, + height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 31), 0, 0, 32, 20, - 3, height, 0, 6, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 31), 0, 0, 32, 20, 3, + height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -10840,21 +10770,21 @@ namespace SingleRailRC } static void TrackFlatTo60DegDownLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpToFlatLongBase(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDownToFlatLongBase( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatTo60DegUpLongBase(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackBlockBrakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -10862,19 +10792,19 @@ namespace SingleRailRC case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BLOCK_BRAKE + 0), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BLOCK_BRAKE + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BLOCK_BRAKE + 1), 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_BLOCK_BRAKE + 1), 0, 0, 32, 20, 3, height, 0, 6, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -10883,7 +10813,7 @@ namespace SingleRailRC } static void TrackLeftCorkscrewUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10893,28 +10823,28 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 0), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 0), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 3), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 3), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 6), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 6), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 9), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 9), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -10931,22 +10861,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 1), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 1), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 4), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 4), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 7), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 7), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 10), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 10), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -10958,22 +10888,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 2), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 2), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 5), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 5), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 8), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 8), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 11), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 11), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -10983,7 +10913,7 @@ namespace SingleRailRC paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -11000,7 +10930,7 @@ namespace SingleRailRC } static void TrackRightCorkscrewUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11010,27 +10940,27 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 12), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 12), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 15), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 15), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 18), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 18), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 21), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 21), 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -11046,22 +10976,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 13), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 13), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 16), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 16), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 19), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 19), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 22), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 22), 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -11073,22 +11003,22 @@ namespace SingleRailRC { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 14), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 14), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 17), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 17), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 20), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 20), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 23), + session, direction, session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 23), 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -11098,7 +11028,7 @@ namespace SingleRailRC paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 33, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 33, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -11115,21 +11045,21 @@ namespace SingleRailRC } static void TrackLeftCorkscrewDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightCorkscrewUp(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); } static void TrackRightCorkscrewDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftCorkscrewUp(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); } static void Track90DegToInvertedFlatQuarterLoopUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11140,25 +11070,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 0), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 0), 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 3), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 3), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 6), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 6), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 9), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 9), 0, 0, 2, 20, 31, height, 4, 6, height + 8); break; } @@ -11172,25 +11102,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 1), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 1), 0, 0, 2, 20, 31, height, -8, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 4), 0, 0, 2, 20, 63, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 4), 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 7), 0, 0, 2, 20, 63, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 7), 0, 0, 2, 20, 63, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 10), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 10), 0, 0, 2, 20, 31, height, -8, 6, height); break; } @@ -11204,25 +11134,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 2), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 2), 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 5), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 5), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 8), 0, 0, 2, 20, 31, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 8), 0, 0, 2, 20, 31, height, 24, 6, height + 8); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 11), 0, 0, 32, 20, 3, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 11), 0, 0, 32, 20, 3, height, 0, 6, height + 24); break; } @@ -11238,14 +11168,14 @@ namespace SingleRailRC } static void TrackInvertedFlatTo90DegQuarterLoopDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track90DegToInvertedFlatQuarterLoopUp(session, ride, 2 - trackSequence, direction, height, trackElement); } static void TrackLeftBankToLeftQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11256,34 +11186,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 0), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 0), 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 2), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 2), 0, 6, 32, 20, 3, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 3), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 3), 0, 6, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 5), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 5), 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 7), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 7), 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -11305,30 +11235,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 1), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 1), 6, 0, 20, 32, 3, height, 0, 6, height - 6); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 4), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 4), 6, 0, 20, 32, 3, height, 0, 6, height - 6); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 6), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 6), 6, 0, 20, 32, 3, height, 0, 6, height - 6); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 8), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 8), 6, 0, 20, 32, 3, height, 0, 6, height - 6); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -11347,7 +11277,7 @@ namespace SingleRailRC } static void TrackRightBankToRightQuarterTurn3Tile25DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11358,34 +11288,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 9), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 9), 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 11), 0, 6, - 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 11), 0, 6, 32, + 20, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 13), 0, 6, - 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 13), 0, 6, 32, + 20, 3, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 14), 0, 6, - 32, 1, 26, height, 0, 27, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 14), 0, 6, 32, + 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 16), 0, 6, - 32, 20, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 16), 0, 6, 32, + 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -11407,30 +11337,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 10), 6, 0, - 20, 32, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 10), 6, 0, 20, + 32, 3, height, 0, 6, height - 6); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 12), 6, 0, - 20, 32, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 12), 6, 0, 20, + 32, 3, height, 0, 6, height - 6); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 15), 6, 0, - 20, 32, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 15), 6, 0, 20, + 32, 3, height, 0, 6, height - 6); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 17), 6, 0, - 20, 32, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 17), 6, 0, 20, + 32, 3, height, 0, 6, height - 6); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -11449,7 +11379,7 @@ namespace SingleRailRC } static void TrackLeftQuarterTurn3Tile25DegDownToLeftBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11460,30 +11390,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 12), 0, 6, - 32, 20, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 12), 0, 6, 32, + 20, 3, height, 0, 6, height - 6); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 15), 0, 6, - 32, 20, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 15), 0, 6, 32, + 20, 3, height, 0, 6, height - 6); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 17), 0, 6, - 32, 20, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 17), 0, 6, 32, + 20, 3, height, 0, 6, height - 6); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 10), 0, 6, - 32, 20, 3, height, 0, 6, height - 6); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 10), 0, 6, 32, + 20, 3, height, 0, 6, height - 6); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_2); @@ -11505,34 +11435,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 11), 6, 0, - 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 11), 6, 0, 20, + 32, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 13), 6, 0, - 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 13), 6, 0, 20, + 32, 3, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 14), 6, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 14), 6, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 16), 6, 0, - 20, 32, 3, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 16), 6, 0, 20, + 32, 3, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 9), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 9), 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -11551,7 +11481,7 @@ namespace SingleRailRC } static void TrackRightQuarterTurn3Tile25DegDownToRightBank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11562,30 +11492,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 8), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 8), 0, 6, 32, 20, 3, height, 0, 6, height - 6); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 1), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 1), 0, 6, 32, 20, 3, height, 0, 6, height - 6); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 4), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 4), 0, 6, 32, 20, 3, height, 0, 6, height - 6); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 6), 0, 6, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 6), 0, 6, 32, 20, 3, height, 0, 6, height - 6); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height - 6, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_2); @@ -11607,34 +11537,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 7), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 7), 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 0), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 0), 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 2), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 2), 6, 0, 20, 32, 3, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 3), 6, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 3), 6, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 5), 6, 0, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 5), 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -11653,7 +11583,7 @@ namespace SingleRailRC } static void TrackLeftLargeHalfLoopUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11664,30 +11594,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 0), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 0), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 7), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 7), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 14), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 14), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 21), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 21), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -11702,34 +11632,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 1), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 1), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 8), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 8), 0, 0, 32, 20, 9, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 15), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 15), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 22), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 22), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11742,25 +11672,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 2), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 2), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 9), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 9), 0, 0, 32, 16, 0, height, 0, 0, height + 70); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 16), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 16), 0, 0, 32, 16, 0, height, 0, 16, height + 70); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 23), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 23), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -11777,34 +11707,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 3), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 3), 0, 0, 32, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 10), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 10), 0, 0, 32, 16, 0, height, 0, 0, height + 200); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 17), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 17), 0, 0, 32, 16, 0, height, 0, 16, height + 200); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 24), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 24), 0, 0, 32, 16, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -11820,25 +11750,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 4), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 4), 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 11), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 11), 0, 0, 16, 16, 0, height, 0, 16, height + 110); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 18), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 18), 0, 0, 16, 16, 0, height, 0, 0, height + 100); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 25), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 25), 0, 0, 16, 16, 3, height, 16, 0, height); break; } @@ -11853,25 +11783,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 5), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 5), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 12), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 12), 0, 0, 32, 16, 0, height, 0, 16, height + 200); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 19), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 19), 0, 0, 32, 16, 0, height, 0, 0, height + 200); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 26), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 26), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -11888,25 +11818,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 6), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 6), 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 13), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 13), 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 20), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 20), 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 27), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 27), 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; } @@ -11925,7 +11855,7 @@ namespace SingleRailRC } static void TrackRightLargeHalfLoopUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11936,30 +11866,30 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 28), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 28), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 35), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 35), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 42), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 42), 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 49), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 49), 0, 0, 32, 20, 3, height, 0, 6, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -11974,34 +11904,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 29), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 29), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 36), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 36), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 43), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 43), 0, 0, 32, 20, 9, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 50), 0, 0, 32, 20, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 50), 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12014,25 +11944,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 30), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 30), 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 37), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 37), 0, 0, 32, 16, 0, height, 0, 16, height + 70); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 44), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 44), 0, 0, 32, 16, 0, height, 0, 0, height + 70); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 51), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 51), 0, 0, 32, 16, 3, height, 0, 0, height); break; } @@ -12049,34 +11979,34 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 31), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 31), 0, 0, 32, 16, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 38), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 38), 0, 0, 32, 16, 0, height, 0, 16, height + 200); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 28, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 28, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 45), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 45), 0, 0, 32, 16, 0, height, 0, 0, height + 200); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 52), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 52), 0, 0, 32, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12092,25 +12022,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 32), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 32), 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 39), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 39), 0, 0, 16, 16, 0, height, 0, 0, height + 100); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 46), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 46), 0, 0, 16, 16, 0, height, 0, 16, height + 110); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 53), 0, 0, 16, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 53), 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -12125,25 +12055,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 33), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 33), 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 40), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 40), 0, 0, 32, 16, 0, height, 0, 0, height + 200); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 47), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 47), 0, 0, 32, 16, 0, height, 0, 16, height + 200); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 54), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 54), 0, 0, 32, 16, 3, height, 0, 16, height); break; } @@ -12160,25 +12090,25 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 34), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 34), 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 41), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 41), 0, 0, 32, 16, 0, height, 0, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 48), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 48), 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 55), 0, 0, 32, 16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 55), 0, 0, 32, 16, 0, height, 0, 16, height + 32); break; } @@ -12197,21 +12127,21 @@ namespace SingleRailRC } static void TrackRightLargeHalfLoopDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackRightLargeHalfLoopUp(session, ride, 6 - trackSequence, direction, height, trackElement); } static void TrackLeftLargeHalfLoopDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackLeftLargeHalfLoopUp(session, ride, 6 - trackSequence, direction, height, trackElement); } static void TrackFlatTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -12221,42 +12151,42 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 0), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 0), 0, 0, 32, 27, 4, height, 0, 2, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 2), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 2), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 1), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 1), 0, 0, 32, 2, 43, height, 0, 4, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 4), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 4), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 3), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 3), 0, 0, 32, 2, 43, height, 0, 4, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 5), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 5), 0, 0, 32, 27, 4, height, 0, 2, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12267,42 +12197,42 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 0), 0, 0, 32, 27, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 0), 0, 0, 32, 27, 4, height, 0, 2, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 2), 0, 0, 1, 24, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 2), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 1), 0, 0, 32, 2, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 1), 0, 0, 32, 2, 43, height, 0, 4, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 4), 0, 0, 1, 24, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 4), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 3), 0, 0, 32, 2, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 3), 0, 0, 32, 2, 43, height, 0, 4, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 4, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 5), 0, 0, 32, 27, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 5), 0, 0, 32, 27, 4, height, 0, 2, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12320,7 +12250,7 @@ namespace SingleRailRC } static void Track60DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -12330,37 +12260,37 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 6), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 6), 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 7), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 7), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 8), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 8), 0, 0, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 10), 0, 0, 1, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 10), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 9), 0, 0, 32, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 9), 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 11), 0, 0, - 32, 27, 4, height, 0, 2, height); + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 11), 0, 0, 32, + 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -12369,37 +12299,37 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 6), 0, 0, 32, 27, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 6), 0, 0, 32, 27, 4, height, 0, 2, height); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 7), 0, 0, 32, 2, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 7), 0, 0, 32, 2, 43, height, 0, 4, height); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 8), 0, 0, 1, 24, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 8), 0, 0, 1, 24, 43, height, 29, 4, height + 2); break; case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 10), 0, 0, 1, 24, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 10), 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 9), 0, 0, 32, 2, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 9), 0, 0, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 11), 0, 0, 32, 27, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 11), 0, 0, 32, 27, 4, height, 0, 2, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -12415,21 +12345,21 @@ namespace SingleRailRC } static void TrackFlatTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { Track60DegUpToFlat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void Track60DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { TrackFlatTo60DegUp(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void TrackDiagFlatTo60DegUp( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12442,7 +12372,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 15), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12454,7 +12384,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12472,7 +12402,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 12), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12484,7 +12414,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12502,7 +12432,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 14), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12514,7 +12444,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12531,23 +12461,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 13), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12557,23 +12487,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12586,7 +12516,7 @@ namespace SingleRailRC } static void TrackDiag60DegUpToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12599,7 +12529,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 19), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12611,7 +12541,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12629,7 +12559,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 16), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12641,7 +12571,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12659,7 +12589,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 18), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12671,7 +12601,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12688,23 +12618,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 17), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12714,23 +12644,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12743,7 +12673,7 @@ namespace SingleRailRC } static void TrackDiagFlatTo60DegDown( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12756,7 +12686,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 17), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12768,7 +12698,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 17), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12786,7 +12716,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 18), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12798,7 +12728,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 18), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12816,7 +12746,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 16), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12828,7 +12758,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 16), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12845,23 +12775,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 19), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12871,23 +12801,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 19), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -12900,7 +12830,7 @@ namespace SingleRailRC } static void TrackDiag60DegDownToFlat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12913,7 +12843,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 13), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12925,7 +12855,7 @@ namespace SingleRailRC case 3: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 13), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12943,7 +12873,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 14), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12955,7 +12885,7 @@ namespace SingleRailRC case 0: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 14), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12973,7 +12903,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 12), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -12985,7 +12915,7 @@ namespace SingleRailRC case 2: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 12), -16, -16, 32, 32, 4, height, -16, -16, height); break; } @@ -13002,23 +12932,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 15), + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_LIFT_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -13028,23 +12958,23 @@ namespace SingleRailRC { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, - session->TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, + session.TrackColours[SCHEME_TRACK] | (SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 15), -16, -16, 32, 32, 4, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } diff --git a/src/openrct2/ride/coaster/StandUpRollerCoaster.cpp b/src/openrct2/ride/coaster/StandUpRollerCoaster.cpp index 3f3a12cd45..6f970734d5 100644 --- a/src/openrct2/ride/coaster/StandUpRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/StandUpRollerCoaster.cpp @@ -32,7 +32,7 @@ static constexpr const uint32_t _StandUpBlockBrakeImages[NumOrthogonalDirections /** rct2: 0x008A7114 */ static void stand_up_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -41,24 +41,24 @@ static void stand_up_rc_track_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25383, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25383, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25384, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25384, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25453, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25453, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25454, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25454, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -68,17 +68,17 @@ static void stand_up_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 3, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -89,7 +89,7 @@ static void stand_up_rc_track_flat( /** rct2: 0x008A7384, 0x008A7394, 0x008A73A4 */ static void stand_up_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -103,18 +103,18 @@ static void stand_up_rc_track_station( { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, _StandUpBlockBrakeImages[direction][isClosed] | session->TrackColours[SCHEME_TRACK], 0, 6, 32, + session, direction, _StandUpBlockBrakeImages[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 6, height + 3); } else { PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 6, height + 3); } PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -123,7 +123,7 @@ static void stand_up_rc_track_station( /** rct2: 0x008A7124 */ static void stand_up_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -132,24 +132,24 @@ static void stand_up_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25385, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25385, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25397, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25397, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25389, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25389, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25399, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25399, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -158,24 +158,24 @@ static void stand_up_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25231, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25231, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25243, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25243, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25235, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25235, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25245, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25245, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -193,7 +193,7 @@ static void stand_up_rc_track_25_deg_up( /** rct2: 0x008A7134 */ static void stand_up_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -202,24 +202,24 @@ static void stand_up_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25386, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25386, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25398, 0, 6, 1, 10, 75, height, 29, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25398, 0, 6, 1, 10, 75, height, 29, 10, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25390, 0, 6, 1, 10, 75, height, 29, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25390, 0, 6, 1, 10, 75, height, 29, 10, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25400, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25400, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -228,24 +228,24 @@ static void stand_up_rc_track_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25232, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25232, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25244, 0, 6, 1, 10, 75, height, 29, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25244, 0, 6, 1, 10, 75, height, 29, 10, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25236, 0, 6, 1, 10, 75, height, 29, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25236, 0, 6, 1, 10, 75, height, 29, 10, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25246, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25246, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -263,7 +263,7 @@ static void stand_up_rc_track_60_deg_up( /** rct2: 0x008A7144 */ static void stand_up_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -272,24 +272,24 @@ static void stand_up_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25387, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25387, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25401, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25401, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25391, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25391, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25403, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25403, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -298,24 +298,24 @@ static void stand_up_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25233, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25233, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25247, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25247, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25237, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25237, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25249, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25249, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -333,7 +333,7 @@ static void stand_up_rc_track_flat_to_25_deg_up( /** rct2: 0x008A7154 */ static void stand_up_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -342,28 +342,28 @@ static void stand_up_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25388, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25388, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25411, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25411, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25402, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25402, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25409, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25409, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25392, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25392, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25404, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25404, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -372,28 +372,28 @@ static void stand_up_rc_track_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25234, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25234, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25277, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25277, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25248, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25248, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25275, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25275, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25238, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25238, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25250, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25250, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -411,7 +411,7 @@ static void stand_up_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A7164 */ static void stand_up_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -420,28 +420,28 @@ static void stand_up_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25396, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25396, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25412, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25412, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25408, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25408, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25410, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25410, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25394, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25394, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25406, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25406, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -450,28 +450,28 @@ static void stand_up_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25242, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25242, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25278, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25278, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25254, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25254, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25276, 0, 6, 32, 10, 43, height, 0, 10, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25276, 0, 6, 32, 10, 43, height, 0, 10, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25240, 0, 6, 32, 2, 43, height, 0, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25240, 0, 6, 32, 2, 43, height, 0, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25252, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25252, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -489,7 +489,7 @@ static void stand_up_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A7174 */ static void stand_up_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -498,24 +498,24 @@ static void stand_up_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25395, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25395, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25407, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25407, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25393, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25393, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25405, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25405, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } else @@ -524,24 +524,24 @@ static void stand_up_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25241, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25241, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25253, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25253, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25239, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25239, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25251, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25251, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -559,7 +559,7 @@ static void stand_up_rc_track_25_deg_up_to_flat( /** rct2: 0x008A7184 */ static void stand_up_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -567,7 +567,7 @@ static void stand_up_rc_track_25_deg_down( /** rct2: 0x008A7194 */ static void stand_up_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -575,7 +575,7 @@ static void stand_up_rc_track_60_deg_down( /** rct2: 0x008A71A4 */ static void stand_up_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -583,7 +583,7 @@ static void stand_up_rc_track_flat_to_25_deg_down( /** rct2: 0x008A71B4 */ static void stand_up_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -591,7 +591,7 @@ static void stand_up_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A71C4 */ static void stand_up_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -599,7 +599,7 @@ static void stand_up_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A71D4 */ static void stand_up_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -607,7 +607,7 @@ static void stand_up_rc_track_25_deg_down_to_flat( /** rct2: 0x008A71E4 */ static void stand_up_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -617,22 +617,22 @@ static void stand_up_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25264, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25264, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25269, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25269, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25274, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25274, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25259, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25259, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -649,19 +649,19 @@ static void stand_up_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25263, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25263, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25268, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25268, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25273, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25273, 0, 16, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25258, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25258, 0, 16, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -676,19 +676,19 @@ static void stand_up_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25262, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25262, 0, 16, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25267, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25267, 16, 16, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25272, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25272, 16, 0, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25257, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25257, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -703,19 +703,19 @@ static void stand_up_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25261, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25261, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25266, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25266, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25271, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25271, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25256, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25256, 16, 0, 16, 32, 3, height); break; } paint_util_set_segment_support_height( @@ -730,22 +730,22 @@ static void stand_up_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25260, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25260, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25265, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25265, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25270, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25270, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25255, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25255, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -764,7 +764,7 @@ static void stand_up_rc_track_left_quarter_turn_5( /** rct2: 0x008A71F4 */ static void stand_up_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -773,31 +773,31 @@ static void stand_up_rc_track_right_quarter_turn_5( /** rct2: 0x008A7204 */ static void stand_up_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25281, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25281, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25286, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25286, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25280, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25280, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25283, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25283, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -807,31 +807,31 @@ static void stand_up_rc_track_flat_to_left_bank( /** rct2: 0x008A7214 */ static void stand_up_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25279, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25279, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25284, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25284, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25282, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25282, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25285, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25285, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -841,31 +841,31 @@ static void stand_up_rc_track_flat_to_right_bank( /** rct2: 0x008A7224 */ static void stand_up_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25282, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25282, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25285, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25285, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25279, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25279, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25284, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25284, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -875,31 +875,31 @@ static void stand_up_rc_track_left_bank_to_flat( /** rct2: 0x008A7234 */ static void stand_up_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25280, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25280, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25283, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25283, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25281, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25281, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25286, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25286, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -909,7 +909,7 @@ static void stand_up_rc_track_right_bank_to_flat( /** rct2: 0x008A7244 */ static void stand_up_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -919,26 +919,24 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25464, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25464, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25475, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25475, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25469, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25469, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25474, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25474, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25459, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25459, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -955,22 +953,20 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25463, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25463, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25468, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25468, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25473, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25473, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25458, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25458, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -985,22 +981,20 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25462, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25462, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25467, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25467, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25472, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25472, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25457, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25457, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1015,22 +1009,20 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25461, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25461, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25466, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25466, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25471, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25471, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25456, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25456, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -1045,26 +1037,24 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25460, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25460, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25465, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25465, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25470, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25470, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25476, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25476, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25455, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25455, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -1083,7 +1073,7 @@ static void stand_up_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008A7254 */ static void stand_up_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1092,31 +1082,31 @@ static void stand_up_rc_track_banked_right_quarter_turn_5( /** rct2: 0x008A7264 */ static void stand_up_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25315, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25315, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25316, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25316, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25317, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25317, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25318, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25318, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1133,31 +1123,31 @@ static void stand_up_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008A7274 */ static void stand_up_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25319, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25319, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25320, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25320, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25321, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25321, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25322, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25322, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1174,31 +1164,31 @@ static void stand_up_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008A7284 */ static void stand_up_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25311, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25311, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25312, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25312, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25313, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25313, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25314, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25314, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1215,31 +1205,31 @@ static void stand_up_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008A7294 */ static void stand_up_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25307, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25307, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25308, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25308, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25309, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25309, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25310, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25310, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1256,7 +1246,7 @@ static void stand_up_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008A72A4 */ static void stand_up_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1264,7 +1254,7 @@ static void stand_up_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008A72B4 */ static void stand_up_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1272,7 +1262,7 @@ static void stand_up_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008A72C4 */ static void stand_up_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1280,7 +1270,7 @@ static void stand_up_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008A72D4 */ static void stand_up_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1288,31 +1278,31 @@ static void stand_up_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008A72E4 */ static void stand_up_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25323, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25323, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25324, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25324, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25325, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25325, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25326, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25326, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -1322,7 +1312,7 @@ static void stand_up_rc_track_left_bank( /** rct2: 0x008A72F4 */ static void stand_up_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1330,7 +1320,7 @@ static void stand_up_rc_track_right_bank( /** rct2: 0x008A7304 */ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1342,23 +1332,23 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25433, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25433, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25438, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25438, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25443, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25443, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25448, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25448, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -1366,23 +1356,23 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25347, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25347, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25352, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25352, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25357, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25357, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25362, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25362, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1402,19 +1392,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25434, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25434, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25439, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25439, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25444, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25444, 0, 16, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25449, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25449, 0, 16, 32, 16, 3, height); break; } } @@ -1424,19 +1414,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25348, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25348, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25353, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25353, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25358, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25358, 0, 16, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25363, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25363, 0, 16, 32, 16, 3, height); break; } } @@ -1454,19 +1444,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25435, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25435, 0, 16, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25440, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25440, 16, 16, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25445, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25445, 16, 0, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25450, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25450, 0, 0, 16, 16, 3, height); break; } } @@ -1476,19 +1466,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25349, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25349, 0, 16, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25354, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25354, 16, 16, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25359, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25359, 16, 0, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25364, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25364, 0, 0, 16, 16, 3, height); break; } } @@ -1506,19 +1496,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25436, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25436, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25441, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25441, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25446, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25446, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25451, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25451, 16, 0, 16, 32, 3, height); break; } } @@ -1528,19 +1518,19 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25350, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25350, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25355, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25355, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25360, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25360, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25365, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25365, 16, 0, 16, 32, 3, height); break; } } @@ -1558,23 +1548,23 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25437, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25437, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25442, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25442, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25447, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25447, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25452, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25452, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -1582,23 +1572,23 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25351, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25351, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25356, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25356, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25361, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25361, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25366, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25366, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -1618,7 +1608,7 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A7314 */ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1630,23 +1620,23 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25413, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25413, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25418, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25418, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25423, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25423, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25428, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25428, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -1654,23 +1644,23 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25327, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25327, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25332, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25332, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25337, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25337, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25342, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25342, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -1690,19 +1680,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25414, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25414, 0, 16, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25419, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25419, 0, 16, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25424, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25424, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25429, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25429, 0, 0, 32, 16, 3, height); break; } } @@ -1712,19 +1702,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25328, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25328, 0, 16, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25333, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25333, 0, 16, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25338, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25338, 0, 0, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25343, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25343, 0, 0, 32, 16, 3, height); break; } } @@ -1742,19 +1732,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25415, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25415, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25420, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25420, 16, 0, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25425, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25425, 16, 16, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25430, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25430, 0, 16, 16, 16, 3, height); break; } } @@ -1764,19 +1754,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25329, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25329, 0, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25334, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25334, 16, 0, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25339, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25339, 16, 16, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25344, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25344, 0, 16, 16, 16, 3, height); break; } } @@ -1794,19 +1784,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25416, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25416, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25421, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25421, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25426, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25426, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25431, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25431, 16, 0, 16, 32, 3, height); break; } } @@ -1816,19 +1806,19 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25330, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25330, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25335, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25335, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25340, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25340, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25345, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25345, 16, 0, 16, 32, 3, height); break; } } @@ -1846,23 +1836,23 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25417, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25417, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25422, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25422, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25427, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25427, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25432, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25432, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -1870,23 +1860,23 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25331, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25331, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25336, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25336, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25341, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25341, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25346, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25346, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -1906,7 +1896,7 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A7324 */ static void stand_up_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1915,7 +1905,7 @@ static void stand_up_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A7334 */ static void stand_up_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1924,7 +1914,7 @@ static void stand_up_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A7344 */ static void stand_up_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1934,22 +1924,22 @@ static void stand_up_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25371, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25371, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25378, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25378, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25374, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25374, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25375, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1963,23 +1953,23 @@ static void stand_up_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25372, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25372, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25377, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25377, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25373, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25373, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25376, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25376, 0, 6, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -1994,23 +1984,23 @@ static void stand_up_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25373, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25373, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25376, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25376, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25372, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25372, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25377, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25377, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2025,22 +2015,22 @@ static void stand_up_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25374, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25374, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25375, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25375, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25371, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25371, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25378, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25378, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2059,7 +2049,7 @@ static void stand_up_rc_track_s_bend_left( /** rct2: 0x008A7354 */ static void stand_up_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2069,22 +2059,22 @@ static void stand_up_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25367, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25367, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25382, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25382, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25370, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25370, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25379, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2098,23 +2088,23 @@ static void stand_up_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25368, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25368, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25381, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25381, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25369, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25369, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25380, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25380, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -2129,23 +2119,23 @@ static void stand_up_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25369, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25369, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25380, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25380, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25368, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25368, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25381, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25381, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2160,22 +2150,22 @@ static void stand_up_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25370, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25370, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25379, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25379, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25367, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25367, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25382, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25382, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2194,7 +2184,7 @@ static void stand_up_rc_track_s_bend_right( /** rct2: 0x008A7364 */ static void stand_up_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2204,22 +2194,22 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25477, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25477, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25485, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25485, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25484, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25484, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25492, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25492, 0, 6, 32, 20, 7, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2236,27 +2226,27 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25478, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25478, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25486, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25486, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25483, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25483, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25491, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25491, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2271,19 +2261,19 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25479, 16, 0, 5, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25479, 16, 0, 5, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25487, 12, 0, 3, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25487, 12, 0, 3, 16, 119, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25482, 10, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25482, 10, 16, 4, 16, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25490, 16, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25490, 16, 16, 4, 16, 119, height); break; } paint_util_set_segment_support_height( @@ -2295,19 +2285,19 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25480, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25480, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25488, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25488, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25481, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25481, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25489, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25489, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2328,19 +2318,19 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25481, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25481, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25489, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25489, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25480, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25480, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25488, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25488, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -2355,19 +2345,19 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25482, 10, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25482, 10, 16, 4, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25490, 16, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25490, 16, 16, 4, 16, 119, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25479, 16, 0, 5, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25479, 16, 0, 5, 16, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25487, 12, 0, 3, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25487, 12, 0, 3, 16, 119, height); break; } paint_util_set_segment_support_height( @@ -2379,27 +2369,27 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25483, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25483, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25491, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25491, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25478, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25478, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25486, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25486, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2414,22 +2404,22 @@ static void stand_up_rc_track_left_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25484, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25484, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25492, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25492, 0, 6, 32, 20, 7, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25477, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25477, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25485, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25485, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2451,7 +2441,7 @@ static void stand_up_rc_track_left_vertical_loop( /** rct2: 0x008A7374 */ static void stand_up_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2461,22 +2451,22 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25508, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25508, 0, 6, 32, 20, 7, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25500, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25500, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25501, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25501, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25493, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25493, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -2488,27 +2478,27 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25507, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25507, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25499, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25499, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25502, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25502, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25494, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25494, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2518,19 +2508,19 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25506, 16, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25506, 16, 16, 4, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25498, 10, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25498, 10, 16, 4, 16, 119, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25503, 12, 0, 3, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25503, 12, 0, 3, 16, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25495, 16, 0, 5, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25495, 16, 0, 5, 16, 119, height); break; } paint_util_set_general_support_height(session, height + 168, 0x20); @@ -2540,19 +2530,19 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25505, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25505, 0, 16, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25497, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25497, 0, 16, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25504, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25504, 0, 0, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25496, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25496, 0, 0, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2568,19 +2558,19 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25504, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25504, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25496, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25496, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25505, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25505, 0, 16, 32, 16, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25497, 0, 16, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25497, 0, 16, 32, 16, 3, height + 32); break; } paint_util_set_general_support_height(session, height + 48, 0x20); @@ -2590,19 +2580,19 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25503, 12, 0, 3, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25503, 12, 0, 3, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25495, 16, 0, 5, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25495, 16, 0, 5, 16, 119, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25506, 16, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25506, 16, 16, 4, 16, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25498, 10, 16, 4, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25498, 10, 16, 4, 16, 119, height); break; } paint_util_set_general_support_height(session, height + 168, 0x20); @@ -2612,27 +2602,27 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25502, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25502, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25494, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25494, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25507, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25507, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25499, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25499, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -2642,22 +2632,22 @@ static void stand_up_rc_track_right_vertical_loop( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25501, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25501, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25493, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25493, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25508, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25508, 0, 6, 32, 20, 7, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25500, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25500, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -2676,7 +2666,7 @@ static void stand_up_rc_track_right_vertical_loop( /** rct2: 0x008A73B4 */ static void stand_up_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2686,22 +2676,22 @@ static void stand_up_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25514, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25514, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25517, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25517, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25520, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25520, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25511, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25511, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2718,19 +2708,19 @@ static void stand_up_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25513, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25513, 16, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25516, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25516, 0, 0, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25519, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25519, 0, 16, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25510, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25510, 16, 16, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -2742,22 +2732,22 @@ static void stand_up_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25512, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25512, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25515, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25515, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25518, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25518, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25509, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25509, 6, 0, 20, 32, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2776,7 +2766,7 @@ static void stand_up_rc_track_left_quarter_turn_3( /** rct2: 0x008A73C4 */ static void stand_up_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2785,7 +2775,7 @@ static void stand_up_rc_track_right_quarter_turn_3( /** rct2: 0x008A73D4 */ static void stand_up_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2795,26 +2785,24 @@ static void stand_up_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25526, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25526, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25533, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25533, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25529, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25529, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25532, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25532, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25523, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25523, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -2831,22 +2819,20 @@ static void stand_up_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25525, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25525, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25528, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25528, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25531, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25531, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25522, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25522, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -2859,26 +2845,24 @@ static void stand_up_rc_track_left_quarter_turn_3_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25524, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25524, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25527, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25527, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25530, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25530, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25534, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25534, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25521, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25521, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -2897,7 +2881,7 @@ static void stand_up_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008A73E4 */ static void stand_up_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -2906,7 +2890,7 @@ static void stand_up_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008A73F4 */ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2918,23 +2902,23 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25562, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25562, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25564, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25564, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25566, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25566, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25560, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25560, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -2942,23 +2926,23 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25546, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25546, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25548, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25548, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25550, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25550, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25544, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25544, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -2981,23 +2965,23 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25561, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25561, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25563, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25563, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25565, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25565, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25559, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25559, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -3005,23 +2989,23 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25545, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25545, 6, 0, 20, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25547, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25547, 6, 0, 20, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25549, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25549, 6, 0, 20, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25543, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25543, 6, 0, 20, 32, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) { @@ -3041,7 +3025,7 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A7404 */ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3053,23 +3037,23 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25551, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25551, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25553, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25553, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25555, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25555, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25557, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25557, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } else { @@ -3077,23 +3061,23 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25535, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25535, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25537, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25537, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25539, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25539, 0, 6, 32, 20, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25541, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25541, 0, 6, 32, 20, 3, height); break; } metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -3116,27 +3100,27 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25552, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25552, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25554, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25554, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25556, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25556, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25558, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25558, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3146,27 +3130,27 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25536, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25536, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25538, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25538, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25540, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25540, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25542, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25542, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -3188,7 +3172,7 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A7414 */ static void stand_up_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3197,7 +3181,7 @@ static void stand_up_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A7424 */ static void stand_up_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3206,7 +3190,7 @@ static void stand_up_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A7434 */ static void stand_up_rc_track_half_loop_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3216,22 +3200,22 @@ static void stand_up_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25575, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25575, 0, 6, 32, 20, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25583, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25583, 0, 6, 32, 20, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25582, 0, 6, 32, 20, 9, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25582, 0, 6, 32, 20, 9, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25590, 0, 6, 32, 20, 7, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25590, 0, 6, 32, 20, 7, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_1); @@ -3245,27 +3229,27 @@ static void stand_up_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25576, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25576, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25584, 0, 14, 32, 2, 63, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25584, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 15, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 15, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25581, 0, 6, 32, 2, 3, height, 0, 20, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25581, 0, 6, 32, 2, 3, height, 0, 20, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25589, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25589, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -3276,19 +3260,19 @@ static void stand_up_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25577, 16, 0, 2, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25577, 16, 0, 2, 16, 119, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25585, 12, 0, 3, 16, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25585, 12, 0, 3, 16, 119, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25580, 10, 16, 4, 12, 119, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25580, 10, 16, 4, 12, 119, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25588, 16, 16, 2, 16, 119, height, 15, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25588, 16, 16, 2, 16, 119, height, 15, 6, height); break; } @@ -3304,19 +3288,19 @@ static void stand_up_rc_track_half_loop_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25578, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25578, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25586, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25586, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25579, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25579, 0, 16, 32, 12, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25587, 0, 16, 32, 12, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25587, 0, 16, 32, 12, 3, height + 32); break; } if (direction == 0 || direction == 3) @@ -3332,7 +3316,7 @@ static void stand_up_rc_track_half_loop_up( /** rct2: 0x008A7444 */ static void stand_up_rc_track_half_loop_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_half_loop_up(session, ride, 3 - trackSequence, direction, height, trackElement); @@ -3340,7 +3324,7 @@ static void stand_up_rc_track_half_loop_down( /** rct2: 0x008A7454 */ static void stand_up_rc_track_left_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3350,22 +3334,22 @@ static void stand_up_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25591, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25591, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25594, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25594, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25597, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25597, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25600, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25600, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } @@ -3383,22 +3367,22 @@ static void stand_up_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25592, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25592, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25595, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25595, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25598, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25598, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25601, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25601, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -3410,22 +3394,22 @@ static void stand_up_rc_track_left_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25593, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25593, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25596, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25596, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25599, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25599, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25602, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25602, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -3434,7 +3418,7 @@ static void stand_up_rc_track_left_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3452,7 +3436,7 @@ static void stand_up_rc_track_left_corkscrew_up( /** rct2: 0x008A7464 */ static void stand_up_rc_track_right_corkscrew_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3462,26 +3446,26 @@ static void stand_up_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25603, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25603, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25606, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25606, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25609, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25609, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25612, 0, 0, 32, 20, 3, height, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25612, 0, 0, 32, 20, 3, height, 0, 6, height + 4); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3496,22 +3480,22 @@ static void stand_up_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25604, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25604, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25607, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25607, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25610, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25610, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25613, 0, 0, 20, 20, 3, height, 6, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25613, 0, 0, 20, 20, 3, height, 6, 6, height + 10); break; } @@ -3523,22 +3507,22 @@ static void stand_up_rc_track_right_corkscrew_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25605, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25605, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25608, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25608, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25611, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25611, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25614, 0, 0, 20, 32, 3, height, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25614, 0, 0, 20, 32, 3, height, 6, 0, height + 24); break; } @@ -3547,7 +3531,7 @@ static void stand_up_rc_track_right_corkscrew_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 35, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -3565,7 +3549,7 @@ static void stand_up_rc_track_right_corkscrew_up( /** rct2: 0x008A7474 */ static void stand_up_rc_track_left_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_right_corkscrew_up(session, ride, 2 - trackSequence, (direction + 1) & 3, height, trackElement); @@ -3573,7 +3557,7 @@ static void stand_up_rc_track_left_corkscrew_down( /** rct2: 0x008A7484 */ static void stand_up_rc_track_right_corkscrew_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { stand_up_rc_track_left_corkscrew_up(session, ride, 2 - trackSequence, (direction - 1) & 3, height, trackElement); @@ -3581,7 +3565,7 @@ static void stand_up_rc_track_right_corkscrew_down( /** rct2: 0x008A7734 */ static void stand_up_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3591,26 +3575,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25844, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25844, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25851, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25851, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25847, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25847, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25850, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25850, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25841, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25841, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3628,22 +3610,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25843, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25843, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25846, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25846, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25849, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25849, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25840, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25840, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3656,26 +3636,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25842, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25842, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25845, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25845, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25848, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25848, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25852, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25852, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25839, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25839, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3695,26 +3673,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25841, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25841, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25844, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25844, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25851, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25851, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25847, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25847, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25850, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25850, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3737,23 +3713,21 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25840, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25840, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25843, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25843, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25846, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25846, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25849, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25849, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3765,26 +3739,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25839, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25839, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25842, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25842, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25845, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25845, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25848, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25848, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25852, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25852, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -3799,7 +3771,7 @@ static void stand_up_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008A7744 */ static void stand_up_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3809,26 +3781,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25825, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25825, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25828, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25828, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25831, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25831, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25834, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25834, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25838, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25838, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -3846,23 +3816,21 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25826, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25826, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25829, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25829, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25832, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25832, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25835, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25835, 0, 0, 16, 16, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -3874,26 +3842,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25827, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25827, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25830, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25830, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25837, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25837, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25833, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25833, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25836, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25836, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -3913,26 +3879,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25828, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25828, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25831, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25831, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25834, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25834, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25838, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25838, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25825, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25825, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -3955,22 +3919,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25829, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25829, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25832, 0, 0, 16, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25832, 0, 0, 16, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25835, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25835, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25826, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25826, 0, 0, 16, 16, 3, height, 16, 16, height); break; } @@ -3983,26 +3945,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25830, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25830, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25837, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25837, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25833, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25833, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25836, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25836, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25827, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25827, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4017,7 +3977,7 @@ static void stand_up_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008A7754 */ static void stand_up_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -4031,7 +3991,7 @@ static void stand_up_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008A7764 */ static void stand_up_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -4045,7 +4005,7 @@ static void stand_up_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008A76F4 */ static void stand_up_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4055,26 +4015,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25812, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25812, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25823, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25823, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25817, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25817, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25822, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25822, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25807, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25807, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4092,22 +4050,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25811, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25811, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25816, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25816, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25821, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25821, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25806, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25806, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4122,22 +4078,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25810, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25810, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25815, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25815, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25820, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25820, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25805, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25805, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4152,22 +4106,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25809, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25809, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25814, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25814, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25819, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25819, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25804, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25804, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4182,26 +4134,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25808, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25808, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25813, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25813, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25818, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25818, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25824, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25824, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25803, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25803, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4221,26 +4171,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25807, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25807, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25812, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25812, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25823, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25823, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25817, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25817, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25822, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25822, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4263,22 +4211,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25806, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25806, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25811, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25811, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25816, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25816, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25821, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25821, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4293,22 +4239,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25805, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25805, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25810, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25810, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25815, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25815, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25820, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25820, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4323,22 +4267,20 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25804, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25804, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25809, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25809, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25814, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25814, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25819, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25819, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4353,26 +4295,24 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25803, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25803, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25808, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25808, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25813, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25813, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25818, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25818, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25824, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25824, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4387,7 +4327,7 @@ static void stand_up_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008A7704 */ static void stand_up_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4397,26 +4337,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25781, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25781, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25786, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25786, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25791, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25791, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25796, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25796, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25802, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25802, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4434,22 +4372,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25782, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25782, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25787, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25787, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25792, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25792, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25797, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25797, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4464,22 +4400,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25783, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25783, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25788, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25788, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25793, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25793, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25798, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25798, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4494,22 +4428,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25784, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25784, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25789, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25789, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25794, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25794, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25799, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25799, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4524,26 +4456,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25785, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25785, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25790, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25790, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25801, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25801, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25795, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25795, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25800, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25800, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 0: @@ -4563,26 +4493,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25786, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25786, 0, 0, 20, 32, 3, height, 6, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25791, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25791, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25796, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25796, 0, 0, 20, 32, 3, height, 6, 0, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25802, 0, 0, 1, 32, 26, height, 27, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25802, 0, 0, 1, 32, 26, height, 27, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25781, 0, 0, 20, 32, 3, height, 6, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25781, 0, 0, 20, 32, 3, height, 6, 0, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 2: @@ -4605,22 +4533,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25787, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25787, 0, 0, 16, 32, 3, height, 16, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25792, 0, 0, 16, 32, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25792, 0, 0, 16, 32, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25797, 0, 0, 16, 32, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25797, 0, 0, 16, 32, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25782, 0, 0, 16, 32, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25782, 0, 0, 16, 32, 3, height, 16, 0, height); break; } paint_util_set_segment_support_height( @@ -4635,22 +4561,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25788, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25788, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25793, 0, 0, 16, 16, 1, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25793, 0, 0, 16, 16, 1, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25798, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25798, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25783, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25783, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4665,22 +4589,20 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25789, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25789, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25794, 0, 0, 32, 16, 1, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25794, 0, 0, 32, 16, 1, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25799, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25799, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25784, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25784, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4695,26 +4617,24 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25790, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25790, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25801, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25801, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25795, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25795, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25800, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25800, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25785, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25785, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 7, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height + 8, TUNNEL_0); @@ -4729,7 +4649,7 @@ static void stand_up_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008A7714 */ static void stand_up_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4743,7 +4663,7 @@ static void stand_up_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008A7724 */ static void stand_up_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -4757,7 +4677,7 @@ static void stand_up_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008A7494 */ static void stand_up_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4765,17 +4685,17 @@ static void stand_up_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25569, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25569, 0, 6, 32, 20, 3, height); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25570, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25570, 0, 6, 32, 20, 3, height); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -4785,38 +4705,38 @@ static void stand_up_rc_track_brakes( /** rct2: 0x008A74A4 */ static void stand_up_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 1, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 1: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 1, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 2: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 1, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 25229, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; case 3: PaintAddImageAsParentRotated(session, direction, IMAGE_TYPE_REMAP | SPR_STATION_BASE_D, 0, 0, 32, 32, 1, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 1, height, 0, 6, height + 3); + session, direction, session.TrackColours[SCHEME_TRACK] | 25230, 0, 6, 32, 20, 1, height, 0, 6, height + 3); break; } track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -4827,7 +4747,7 @@ static void stand_up_rc_track_on_ride_photo( /** rct2: 0x008A74B4 */ static void stand_up_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4837,22 +4757,22 @@ static void stand_up_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25643, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25643, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25647, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25647, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25651, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25651, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25655, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25655, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -4866,21 +4786,19 @@ static void stand_up_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25644, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25644, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25648, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25648, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25652, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25652, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25656, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25656, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -4895,22 +4813,20 @@ static void stand_up_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25645, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25645, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25649, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25649, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25653, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25653, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25657, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25657, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -4928,30 +4844,28 @@ static void stand_up_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25646, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25646, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25650, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25650, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25654, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25654, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25658, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25658, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -4966,7 +4880,7 @@ static void stand_up_rc_track_left_eighth_to_diag( /** rct2: 0x008A74C4 */ static void stand_up_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4976,22 +4890,22 @@ static void stand_up_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25627, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25627, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25631, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25631, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25635, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25635, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25639, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25639, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5005,21 +4919,19 @@ static void stand_up_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25628, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25628, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25632, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25632, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25636, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25636, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25640, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25640, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5034,21 +4946,19 @@ static void stand_up_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25629, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25629, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25633, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25633, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25637, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25637, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25641, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25641, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5066,30 +4976,28 @@ static void stand_up_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25630, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25630, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25634, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25634, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25638, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25638, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25642, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25642, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5104,7 +5012,7 @@ static void stand_up_rc_track_right_eighth_to_diag( /** rct2: 0x008A74D4 */ static void stand_up_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5113,7 +5021,7 @@ static void stand_up_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A74E4 */ static void stand_up_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5122,7 +5030,7 @@ static void stand_up_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A76A4 */ static void stand_up_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5132,24 +5040,22 @@ static void stand_up_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25675, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25675, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25679, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25679, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25683, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25683, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25687, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25687, 0, 0, 32, 20, 3, height, 0, 6, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5163,22 +5069,20 @@ static void stand_up_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25676, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25676, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25680, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25680, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25684, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25684, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25688, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25688, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5193,22 +5097,20 @@ static void stand_up_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25677, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25677, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25681, 0, 0, 16, 16, 0, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25681, 0, 0, 16, 16, 0, height, 16, 16, height + 27); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25685, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25685, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25689, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25689, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5226,30 +5128,29 @@ static void stand_up_rc_track_left_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25678, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25678, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25682, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25682, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25686, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25686, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25690, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25690, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5264,7 +5165,7 @@ static void stand_up_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008A76B4 */ static void stand_up_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5274,24 +5175,22 @@ static void stand_up_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25659, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25659, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25663, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25663, 0, 0, 32, 20, 3, height, 0, 6, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25667, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25667, 0, 0, 32, 1, 26, height, 0, 27, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25671, 0, 0, 32, 1, 26, height, 0, 27, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25671, 0, 0, 32, 1, 26, height, 0, 27, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -5305,21 +5204,20 @@ static void stand_up_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25660, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25660, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25664, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25664, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25668, 0, 0, 34, 16, 0, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25668, 0, 0, 34, 16, 0, height, 0, 0, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25672, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25672, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -5334,22 +5232,20 @@ static void stand_up_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25661, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25661, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25665, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25665, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25669, 0, 0, 28, 28, 0, height, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25669, 0, 0, 28, 28, 0, height, 4, 4, height + 27); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25673, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25673, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -5367,30 +5263,29 @@ static void stand_up_rc_track_right_eighth_bank_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25662, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25662, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25666, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 25666, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25670, 0, 0, 16, 18, 0, height, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25670, 0, 0, 16, 18, 0, height, 0, 16, height + 27); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25674, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25674, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5405,7 +5300,7 @@ static void stand_up_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008A76C4 */ static void stand_up_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5414,7 +5309,7 @@ static void stand_up_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008A76D4 */ static void stand_up_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -5423,7 +5318,7 @@ static void stand_up_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008A74F4 */ static void stand_up_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5435,7 +5330,7 @@ static void stand_up_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25756, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25756, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5446,7 +5341,7 @@ static void stand_up_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25694, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25694, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5462,7 +5357,7 @@ static void stand_up_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25753, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25753, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5473,7 +5368,7 @@ static void stand_up_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25691, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25691, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5489,7 +5384,7 @@ static void stand_up_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25755, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25755, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5500,7 +5395,7 @@ static void stand_up_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25693, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25693, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5516,22 +5411,22 @@ static void stand_up_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25754, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25754, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5541,22 +5436,22 @@ static void stand_up_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25692, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25692, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5569,7 +5464,7 @@ static void stand_up_rc_track_diag_flat( /** rct2: 0x008A7524 */ static void stand_up_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5581,7 +5476,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25768, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25768, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5592,7 +5487,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25706, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25706, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5608,7 +5503,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25765, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25765, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5619,7 +5514,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25703, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25703, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5635,7 +5530,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25767, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25767, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5646,7 +5541,7 @@ static void stand_up_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25705, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25705, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5662,22 +5557,22 @@ static void stand_up_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25766, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25766, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5687,22 +5582,22 @@ static void stand_up_rc_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25704, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25704, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5715,7 +5610,7 @@ static void stand_up_rc_track_diag_25_deg_up( /** rct2: 0x008A7584 */ static void stand_up_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5727,7 +5622,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25780, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25780, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5738,7 +5633,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25718, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25718, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5754,7 +5649,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25777, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25777, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5765,7 +5660,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25715, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25715, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5781,7 +5676,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25779, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25779, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5792,7 +5687,7 @@ static void stand_up_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25717, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25717, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5808,22 +5703,22 @@ static void stand_up_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25778, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25778, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5833,22 +5728,22 @@ static void stand_up_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25716, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25716, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5861,7 +5756,7 @@ static void stand_up_rc_track_diag_60_deg_up( /** rct2: 0x008A7504 */ static void stand_up_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5873,7 +5768,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25760, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25760, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5884,7 +5779,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25698, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25698, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5900,7 +5795,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25757, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25757, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5911,7 +5806,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25695, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25695, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5927,7 +5822,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25759, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25759, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5938,7 +5833,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25697, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25697, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -5954,22 +5849,22 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25758, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25758, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -5979,22 +5874,22 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25696, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25696, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6007,7 +5902,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A7564 */ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6019,7 +5914,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25772, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25772, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6030,7 +5925,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25710, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25710, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6046,7 +5941,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25769, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25769, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6057,7 +5952,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25707, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25707, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6073,7 +5968,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25771, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25771, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6084,7 +5979,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25709, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25709, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6100,22 +5995,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25770, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25770, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6125,22 +6020,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25708, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25708, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6153,7 +6048,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A7574 */ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6165,7 +6060,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25776, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25776, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6176,7 +6071,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25714, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25714, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6192,7 +6087,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25773, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25773, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6203,7 +6098,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25711, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25711, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6219,7 +6114,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25775, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25775, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6230,7 +6125,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25713, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25713, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6246,22 +6141,22 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25774, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25774, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6271,22 +6166,22 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25712, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25712, -16, -16, 16, 16, 3, height, 0, 0, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6299,7 +6194,7 @@ static void stand_up_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A7514 */ static void stand_up_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6311,7 +6206,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25764, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25764, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6322,7 +6217,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25702, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25702, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6338,7 +6233,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25761, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25761, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6349,7 +6244,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25699, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25699, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6365,7 +6260,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25763, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25763, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6376,7 +6271,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25701, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25701, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6392,22 +6287,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25762, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25762, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6417,22 +6312,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25700, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25700, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6445,7 +6340,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A7554 */ static void stand_up_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6457,7 +6352,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25766, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25766, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6468,7 +6363,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25704, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25704, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6484,7 +6379,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25767, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25767, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6495,7 +6390,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25705, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25705, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6511,7 +6406,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25765, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25765, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6522,7 +6417,7 @@ static void stand_up_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25703, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25703, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6538,22 +6433,22 @@ static void stand_up_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25768, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25768, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6563,22 +6458,22 @@ static void stand_up_rc_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25706, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25706, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6591,7 +6486,7 @@ static void stand_up_rc_track_diag_25_deg_down( /** rct2: 0x008A75B4 */ static void stand_up_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6603,7 +6498,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25778, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25778, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6614,7 +6509,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25716, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25716, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6630,7 +6525,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25779, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25779, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6641,7 +6536,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25717, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25717, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6657,7 +6552,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25777, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25777, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6668,7 +6563,7 @@ static void stand_up_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25715, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25715, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6684,22 +6579,22 @@ static void stand_up_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25780, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25780, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6709,22 +6604,22 @@ static void stand_up_rc_track_diag_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25718, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25718, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 24, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 24, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 28, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 28, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6737,7 +6632,7 @@ static void stand_up_rc_track_diag_60_deg_down( /** rct2: 0x008A7534 */ static void stand_up_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6749,7 +6644,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25762, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25762, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6760,7 +6655,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25700, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25700, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6775,7 +6670,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25763, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25763, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6786,7 +6681,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25701, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25701, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6801,7 +6696,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25761, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25761, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6812,7 +6707,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25699, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25699, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6827,22 +6722,22 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25764, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25764, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6852,22 +6747,22 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25702, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25702, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6881,7 +6776,7 @@ static void stand_up_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A7594 */ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -6893,7 +6788,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25774, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25774, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6904,7 +6799,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25712, -16, -16, 16, 16, 3, height, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25712, -16, -16, 16, 16, 3, height, 0, 0, height); break; } @@ -6920,7 +6815,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25775, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25775, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6931,7 +6826,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25713, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25713, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6947,7 +6842,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25773, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25773, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6958,7 +6853,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25711, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25711, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -6974,22 +6869,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25776, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25776, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -6999,22 +6894,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25714, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25714, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7027,7 +6922,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A75A4 */ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7039,7 +6934,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25770, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25770, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7050,7 +6945,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25708, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25708, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7066,7 +6961,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25771, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25771, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7077,7 +6972,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25709, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25709, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7093,7 +6988,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25769, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25769, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7104,7 +6999,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25707, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25707, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7120,22 +7015,22 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25772, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25772, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7145,22 +7040,22 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25710, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25710, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7173,7 +7068,7 @@ static void stand_up_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A7544 */ static void stand_up_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7185,7 +7080,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25758, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25758, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7196,7 +7091,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25696, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25696, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7212,7 +7107,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25759, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25759, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7223,7 +7118,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25697, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25697, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7239,7 +7134,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25757, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25757, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7250,7 +7145,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25695, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25695, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7266,22 +7161,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25760, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25760, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7291,22 +7186,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25698, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25698, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -7319,7 +7214,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A75E4 */ static void stand_up_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7329,7 +7224,7 @@ static void stand_up_rc_track_diag_flat_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25726, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25726, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7342,10 +7237,10 @@ static void stand_up_rc_track_diag_flat_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25723, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25723, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25727, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25727, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7358,7 +7253,7 @@ static void stand_up_rc_track_diag_flat_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25725, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25725, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7371,22 +7266,22 @@ static void stand_up_rc_track_diag_flat_to_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25724, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25724, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7398,7 +7293,7 @@ static void stand_up_rc_track_diag_flat_to_left_bank( /** rct2: 0x008A75F4 */ static void stand_up_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7408,7 +7303,7 @@ static void stand_up_rc_track_diag_flat_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25731, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25731, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7421,7 +7316,7 @@ static void stand_up_rc_track_diag_flat_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25728, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25728, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7434,10 +7329,10 @@ static void stand_up_rc_track_diag_flat_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25730, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25730, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25732, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25732, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7450,22 +7345,22 @@ static void stand_up_rc_track_diag_flat_to_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25729, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25729, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7477,7 +7372,7 @@ static void stand_up_rc_track_diag_flat_to_right_bank( /** rct2: 0x008A7604 */ static void stand_up_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7487,7 +7382,7 @@ static void stand_up_rc_track_diag_left_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25729, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25729, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7500,10 +7395,10 @@ static void stand_up_rc_track_diag_left_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25730, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25730, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25732, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25732, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7516,7 +7411,7 @@ static void stand_up_rc_track_diag_left_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25728, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25728, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7529,22 +7424,22 @@ static void stand_up_rc_track_diag_left_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25731, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25731, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7556,7 +7451,7 @@ static void stand_up_rc_track_diag_left_bank_to_flat( /** rct2: 0x008A7614 */ static void stand_up_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7566,7 +7461,7 @@ static void stand_up_rc_track_diag_right_bank_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25724, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25724, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7579,7 +7474,7 @@ static void stand_up_rc_track_diag_right_bank_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25725, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25725, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7592,10 +7487,10 @@ static void stand_up_rc_track_diag_right_bank_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25723, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25723, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25727, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25727, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -7608,22 +7503,22 @@ static void stand_up_rc_track_diag_right_bank_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25726, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25726, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7635,7 +7530,7 @@ static void stand_up_rc_track_diag_right_bank_to_flat( /** rct2: 0x008A7644 */ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7645,7 +7540,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25746, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25746, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7658,10 +7553,10 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25743, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25743, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25747, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25747, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7674,7 +7569,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25745, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25745, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7687,22 +7582,22 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25744, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25744, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7714,7 +7609,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008A7654 */ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7724,7 +7619,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25751, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25751, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7737,7 +7632,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25748, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25748, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7750,10 +7645,10 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25750, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25750, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25752, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25752, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7766,22 +7661,22 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25749, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25749, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7793,7 +7688,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008A7624 */ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7803,7 +7698,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25736, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25736, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7816,10 +7711,10 @@ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25733, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25733, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25737, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25737, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7832,7 +7727,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25735, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25735, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7845,22 +7740,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25734, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25734, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7872,7 +7767,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008A7634 */ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7882,7 +7777,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25741, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25741, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7895,7 +7790,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25738, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25738, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7908,10 +7803,10 @@ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25740, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25740, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25742, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25742, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7924,22 +7819,22 @@ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25739, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25739, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -7951,7 +7846,7 @@ static void stand_up_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008A7664 */ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7961,7 +7856,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25739, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25739, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -7973,10 +7868,10 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25740, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25740, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25742, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25742, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -7988,7 +7883,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25738, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25738, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8000,22 +7895,22 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25741, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25741, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8028,7 +7923,7 @@ static void stand_up_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008A7674 */ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8038,7 +7933,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25734, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25734, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8050,7 +7945,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25735, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25735, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8062,10 +7957,10 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16676, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 16680, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8077,22 +7972,22 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25736, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25736, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8105,7 +8000,7 @@ static void stand_up_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008A7684 */ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8115,7 +8010,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25749, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25749, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8128,10 +8023,10 @@ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25750, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25750, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25752, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25752, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8144,7 +8039,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25748, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25748, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8157,22 +8052,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25751, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25751, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8184,7 +8079,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008A7694 */ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8194,7 +8089,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25744, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25744, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8207,7 +8102,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25745, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25745, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8220,10 +8115,10 @@ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25743, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25743, -16, -16, 32, 32, 3, height, -16, -16, height); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25747, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25747, -16, -16, 32, 32, 0, height, -16, -16, height + 35); break; } @@ -8236,22 +8131,22 @@ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25746, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25746, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8263,7 +8158,7 @@ static void stand_up_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008A75C4 */ static void stand_up_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8273,7 +8168,7 @@ static void stand_up_rc_track_diag_left_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25722, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25722, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8286,7 +8181,7 @@ static void stand_up_rc_track_diag_left_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25719, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25719, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8299,7 +8194,7 @@ static void stand_up_rc_track_diag_left_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25721, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25721, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8312,22 +8207,22 @@ static void stand_up_rc_track_diag_left_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25720, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25720, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8339,7 +8234,7 @@ static void stand_up_rc_track_diag_left_bank( /** rct2: 0x008A75D4 */ static void stand_up_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8349,7 +8244,7 @@ static void stand_up_rc_track_diag_right_bank( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25720, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25720, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8362,7 +8257,7 @@ static void stand_up_rc_track_diag_right_bank( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25721, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25721, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -8375,7 +8270,7 @@ static void stand_up_rc_track_diag_right_bank( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25719, -16, -16, 32, 32, 0, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25719, -16, -16, 32, 32, 0, height, -16, -16, height + 27); break; } @@ -8388,22 +8283,22 @@ static void stand_up_rc_track_diag_right_bank( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25722, -16, -16, 32, 32, 3, height, -16, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25722, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -8415,17 +8310,17 @@ static void stand_up_rc_track_diag_right_bank( /** rct2: 0x008A76E4 */ static void stand_up_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | _StandUpBlockBrakeImages[direction][isClosed], 0, 6, 32, 20, - 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | _StandUpBlockBrakeImages[direction][isClosed], 0, 6, 32, 20, 3, + height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/Steeplechase.cpp b/src/openrct2/ride/coaster/Steeplechase.cpp index 31a303ff29..4fec02cf4a 100644 --- a/src/openrct2/ride/coaster/Steeplechase.cpp +++ b/src/openrct2/ride/coaster/Steeplechase.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008A59A8 */ static void steeplechase_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -30,16 +30,16 @@ static void steeplechase_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -50,16 +50,16 @@ static void steeplechase_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28633, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28633, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28634, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28634, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -70,7 +70,7 @@ static void steeplechase_track_flat( } static void steeplechase_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -81,12 +81,11 @@ static void steeplechase_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 3, height - 2, 0, 2, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 3, height - 2, 0, 2, height); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 3, height, 0, 0, - height); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 3); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 3, height, 0, 0, height); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -95,7 +94,7 @@ static void steeplechase_track_station( /** rct2: 0x008A59B8 */ static void steeplechase_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -104,27 +103,27 @@ static void steeplechase_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28649, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28649, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28655, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28655, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28651, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28651, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28656, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28656, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -134,27 +133,27 @@ static void steeplechase_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28637, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28637, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28643, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28643, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28639, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28639, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28644, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28644, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -173,7 +172,7 @@ static void steeplechase_track_25_deg_up( /** rct2: 0x008A59C8 */ static void steeplechase_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -182,27 +181,27 @@ static void steeplechase_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28650, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28650, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28657, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28657, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28652, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28652, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28658, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28658, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -212,27 +211,27 @@ static void steeplechase_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28638, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28638, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28645, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28645, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28640, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28640, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28646, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28646, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -251,7 +250,7 @@ static void steeplechase_track_flat_to_25_deg_up( /** rct2: 0x008A59D8 */ static void steeplechase_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -260,27 +259,27 @@ static void steeplechase_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28654, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28654, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28660, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28660, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28653, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28653, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28659, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28659, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -290,27 +289,27 @@ static void steeplechase_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28642, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28642, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28648, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28648, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28641, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28641, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28647, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28647, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -329,7 +328,7 @@ static void steeplechase_track_25_deg_up_to_flat( /** rct2: 0x008A59E8 */ static void steeplechase_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { steeplechase_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -337,7 +336,7 @@ static void steeplechase_track_25_deg_down( /** rct2: 0x008A59F8 */ static void steeplechase_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { steeplechase_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -345,7 +344,7 @@ static void steeplechase_track_flat_to_25_deg_down( /** rct2: 0x008A5A08 */ static void steeplechase_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { steeplechase_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -353,7 +352,7 @@ static void steeplechase_track_25_deg_down_to_flat( /** rct2: 0x008A5A18 */ static void steeplechase_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -363,27 +362,27 @@ static void steeplechase_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28698, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28698, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28703, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28703, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28708, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28708, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height - 3, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height - 3, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28693, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28693, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 1, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 1, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -402,19 +401,19 @@ static void steeplechase_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28697, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28697, 0, 0, 32, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28702, 0, 0, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28702, 0, 0, 32, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28707, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28707, 0, 16, 32, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28692, 0, 16, 32, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28692, 0, 16, 32, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -429,19 +428,19 @@ static void steeplechase_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28696, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28696, 0, 16, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28701, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28701, 16, 16, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28706, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28706, 16, 0, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28691, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28691, 0, 0, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -456,19 +455,19 @@ static void steeplechase_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28695, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28695, 16, 0, 16, 32, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28700, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28700, 0, 0, 16, 32, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28705, 0, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28705, 0, 0, 16, 32, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28690, 16, 0, 16, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28690, 16, 0, 16, 32, 3, height); break; } paint_util_set_segment_support_height( @@ -483,27 +482,27 @@ static void steeplechase_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28694, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28694, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 3, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 3, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28699, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28699, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28704, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28704, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28689, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28689, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -524,7 +523,7 @@ static void steeplechase_track_left_quarter_turn_5( /** rct2: 0x008A5A28 */ static void steeplechase_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -533,7 +532,7 @@ static void steeplechase_track_right_quarter_turn_5( /** rct2: 0x008A5A38 */ static void steeplechase_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -543,27 +542,27 @@ static void steeplechase_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28665, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28665, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28672, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28672, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28668, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28668, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28669, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28669, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -579,23 +578,23 @@ static void steeplechase_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28666, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28666, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28671, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28671, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28667, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28667, 0, 6, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28670, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28670, 0, 6, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -610,23 +609,23 @@ static void steeplechase_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28667, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28667, 0, 6, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28670, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28670, 0, 6, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28666, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28666, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28671, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28671, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -641,27 +640,27 @@ static void steeplechase_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28668, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28668, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28669, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28669, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28665, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28665, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28672, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28672, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -682,7 +681,7 @@ static void steeplechase_track_s_bend_left( /** rct2: 0x008A5A48 */ static void steeplechase_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -692,27 +691,27 @@ static void steeplechase_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28661, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28661, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28676, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28676, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28664, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28664, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28673, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28673, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -728,23 +727,23 @@ static void steeplechase_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28662, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28662, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28675, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28675, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28663, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28663, 0, 0, 32, 26, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28674, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28674, 0, 0, 32, 26, 3, height); break; } paint_util_set_segment_support_height( @@ -759,23 +758,23 @@ static void steeplechase_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28663, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28663, 0, 0, 32, 26, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28674, 0, 0, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28674, 0, 0, 32, 26, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28662, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28662, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28675, 0, 6, 32, 26, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28675, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -790,27 +789,27 @@ static void steeplechase_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28664, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28664, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28673, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28673, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28661, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28661, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28676, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28676, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -831,7 +830,7 @@ static void steeplechase_track_s_bend_right( /** rct2: 0x008A5A88 */ static void steeplechase_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -841,27 +840,27 @@ static void steeplechase_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28682, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28682, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28685, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28685, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28688, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28688, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28679, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28679, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 3, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 3, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -880,19 +879,19 @@ static void steeplechase_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28681, 16, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28681, 16, 0, 16, 16, 3, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28684, 0, 0, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28684, 0, 0, 16, 16, 3, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28687, 0, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28687, 0, 16, 16, 16, 3, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28678, 16, 16, 16, 16, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28678, 16, 16, 16, 16, 3, height); break; } paint_util_set_segment_support_height( @@ -904,27 +903,27 @@ static void steeplechase_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28680, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28680, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28683, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28683, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28686, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28686, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28677, 6, 0, 20, 32, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28677, 6, 0, 20, 32, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height - 3, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height - 3, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -945,7 +944,7 @@ static void steeplechase_track_left_quarter_turn_3( /** rct2: 0x008A5A98 */ static void steeplechase_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -954,7 +953,7 @@ static void steeplechase_track_right_quarter_turn_3( /** rct2: 0x008A5AA8 */ static void steeplechase_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -962,15 +961,15 @@ static void steeplechase_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -981,7 +980,7 @@ static void steeplechase_track_brakes( /** rct2: 0x008A5AD8 */ static void steeplechase_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -991,27 +990,27 @@ static void steeplechase_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28725, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28725, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28729, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28729, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28733, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28733, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28737, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28737, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1027,21 +1026,19 @@ static void steeplechase_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28726, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28726, 0, 0, 32, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28730, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28730, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28734, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28734, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28738, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28738, 0, 0, 32, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1056,22 +1053,20 @@ static void steeplechase_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28727, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28727, 0, 0, 16, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28731, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28731, 0, 0, 16, 16, 3, height, 16, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28735, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28735, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28739, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28739, 0, 0, 16, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1089,30 +1084,28 @@ static void steeplechase_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28728, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28728, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28732, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28732, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28736, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28736, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28740, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28740, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1127,7 +1120,7 @@ static void steeplechase_track_left_eighth_to_diag( /** rct2: 0x008A5AE8 */ static void steeplechase_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1137,27 +1130,27 @@ static void steeplechase_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28709, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28709, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28713, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28713, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28717, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28717, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28721, 0, 0, 32, 20, 3, height, 0, 6, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28721, 0, 0, 32, 20, 3, height, 0, 6, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -1173,21 +1166,19 @@ static void steeplechase_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28710, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28710, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28714, 0, 0, 32, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28714, 0, 0, 32, 16, 3, height, 0, 16, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28718, 0, 0, 34, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28718, 0, 0, 34, 16, 3, height, 0, 0, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28722, 0, 0, 32, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28722, 0, 0, 32, 16, 3, height, 0, 0, height); break; } paint_util_set_segment_support_height( @@ -1202,21 +1193,19 @@ static void steeplechase_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28711, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28711, 0, 0, 16, 16, 3, height, 0, 0, height); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28715, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28715, 0, 0, 16, 16, 3, height, 16, 0, height); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28719, 0, 0, 28, 28, 3, height, 4, 4, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28719, 0, 0, 28, 28, 3, height, 4, 4, height); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28723, 0, 0, 16, 16, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28723, 0, 0, 16, 16, 3, height, 0, 16, height); break; } paint_util_set_segment_support_height( @@ -1234,30 +1223,28 @@ static void steeplechase_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28712, 0, 0, 16, 16, 3, height, 16, 0, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28712, 0, 0, 16, 16, 3, height, 16, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28716, 0, 0, 16, 16, 3, height, 0, 0, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28716, 0, 0, 16, 16, 3, height, 0, 0, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28720, 0, 0, 16, 18, 3, height, 0, 16, - height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28720, 0, 0, 16, 18, 3, height, 0, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28724, 0, 0, 16, 16, 3, height, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28724, 0, 0, 16, 16, 3, height, 16, 16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -1272,7 +1259,7 @@ static void steeplechase_track_right_eighth_to_diag( /** rct2: 0x008A5AF8 */ static void steeplechase_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1281,7 +1268,7 @@ static void steeplechase_track_left_eighth_to_orthogonal( /** rct2: 0x008A5B08 */ static void steeplechase_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1290,7 +1277,7 @@ static void steeplechase_track_right_eighth_to_orthogonal( /** rct2: 0x008A5AC8 */ static void steeplechase_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1302,7 +1289,7 @@ static void steeplechase_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28760, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28760, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1313,7 +1300,7 @@ static void steeplechase_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28744, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28744, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1329,7 +1316,7 @@ static void steeplechase_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28757, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28757, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1340,7 +1327,7 @@ static void steeplechase_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28741, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28741, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1356,7 +1343,7 @@ static void steeplechase_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28759, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28759, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1367,7 +1354,7 @@ static void steeplechase_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28743, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28743, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1383,22 +1370,22 @@ static void steeplechase_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28758, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28758, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1408,22 +1395,22 @@ static void steeplechase_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28742, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28742, -16, -16, 32, 32, 3, height, -16, -16, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1436,7 +1423,7 @@ static void steeplechase_track_diag_flat( /** rct2: 0x008A5B38 */ static void steeplechase_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1448,7 +1435,7 @@ static void steeplechase_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28772, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28772, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1459,7 +1446,7 @@ static void steeplechase_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28756, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28756, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1475,7 +1462,7 @@ static void steeplechase_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28769, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28769, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1486,7 +1473,7 @@ static void steeplechase_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28753, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28753, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1502,7 +1489,7 @@ static void steeplechase_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28771, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28771, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1513,7 +1500,7 @@ static void steeplechase_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28755, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28755, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1529,22 +1516,22 @@ static void steeplechase_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28770, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28770, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1554,22 +1541,22 @@ static void steeplechase_track_diag_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28754, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28754, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1582,7 +1569,7 @@ static void steeplechase_track_diag_25_deg_up( /** rct2: 0x008A5B18 */ static void steeplechase_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1594,7 +1581,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28764, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28764, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1605,7 +1592,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28748, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28748, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1621,7 +1608,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28761, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28761, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1632,7 +1619,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28745, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28745, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1648,7 +1635,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28763, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28763, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1659,7 +1646,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28747, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28747, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1675,22 +1662,22 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28762, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28762, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1700,22 +1687,22 @@ static void steeplechase_track_diag_flat_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28746, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28746, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1728,7 +1715,7 @@ static void steeplechase_track_diag_flat_to_25_deg_up( /** rct2: 0x008A5B28 */ static void steeplechase_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1740,7 +1727,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28768, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28768, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1751,7 +1738,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28752, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28752, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1767,7 +1754,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28765, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28765, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1778,7 +1765,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28749, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28749, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1794,7 +1781,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28767, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28767, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1805,7 +1792,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28751, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28751, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1821,22 +1808,22 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28766, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28766, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1846,22 +1833,22 @@ static void steeplechase_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28750, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28750, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1874,7 +1861,7 @@ static void steeplechase_track_diag_25_deg_up_to_flat( /** rct2: 0x008A5B68 */ static void steeplechase_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1886,7 +1873,7 @@ static void steeplechase_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28770, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28770, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1897,7 +1884,7 @@ static void steeplechase_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28754, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28754, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1913,7 +1900,7 @@ static void steeplechase_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28771, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28771, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1924,7 +1911,7 @@ static void steeplechase_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28755, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28755, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1940,7 +1927,7 @@ static void steeplechase_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28769, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28769, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1951,7 +1938,7 @@ static void steeplechase_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28753, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28753, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -1967,22 +1954,22 @@ static void steeplechase_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28772, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28772, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -1992,22 +1979,22 @@ static void steeplechase_track_diag_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28756, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28756, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2020,7 +2007,7 @@ static void steeplechase_track_diag_25_deg_down( /** rct2: 0x008A5B48 */ static void steeplechase_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2032,7 +2019,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28766, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28766, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2043,7 +2030,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28750, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28750, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2058,7 +2045,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28767, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28767, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2069,7 +2056,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28751, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28751, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2084,7 +2071,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28765, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28765, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2095,7 +2082,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28749, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28749, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2110,22 +2097,22 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28768, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28768, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2135,22 +2122,22 @@ static void steeplechase_track_diag_flat_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28752, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28752, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2164,7 +2151,7 @@ static void steeplechase_track_diag_flat_to_25_deg_down( /** rct2: 0x008A5B58 */ static void steeplechase_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2176,7 +2163,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28762, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28762, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2187,7 +2174,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28746, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28746, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2203,7 +2190,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28763, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28763, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2214,7 +2201,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28747, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28747, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2230,7 +2217,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28761, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28761, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2241,7 +2228,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28745, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28745, -16, -16, 32, 32, 3, height, -16, -16, height); break; } @@ -2257,22 +2244,22 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28764, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28764, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2282,22 +2269,22 @@ static void steeplechase_track_diag_25_deg_down_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28748, -16, -16, 32, 32, 3, height, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 28748, -16, -16, 32, 32, 3, height, -16, -16, height); metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -2310,7 +2297,7 @@ static void steeplechase_track_diag_25_deg_down_to_flat( /** rct2: 0x008A5AB8 */ static void steeplechase_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -2318,15 +2305,15 @@ static void steeplechase_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, session.TrackColours[SCHEME_TRACK] | 28635, 0, 6, 32, 20, 3, height); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); + session, direction, session.TrackColours[SCHEME_TRACK] | 28636, 0, 6, 32, 20, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); diff --git a/src/openrct2/ride/coaster/SuspendedSwingingCoaster.cpp b/src/openrct2/ride/coaster/SuspendedSwingingCoaster.cpp index 176a6067e7..e95d79ed7f 100644 --- a/src/openrct2/ride/coaster/SuspendedSwingingCoaster.cpp +++ b/src/openrct2/ride/coaster/SuspendedSwingingCoaster.cpp @@ -20,7 +20,7 @@ /** rct2: 0x008A8958 */ static void suspended_swinging_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -30,13 +30,13 @@ static void suspended_swinging_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25963, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25963, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25964, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25964, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -48,13 +48,13 @@ static void suspended_swinging_rc_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25961, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25961, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25962, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25962, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -62,9 +62,9 @@ static void suspended_swinging_rc_track_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -73,7 +73,7 @@ static void suspended_swinging_rc_track_flat( /** rct2: 0x008A8AA8, 0x008A8AB8, 0x008A8AC8 */ static void suspended_swinging_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -84,14 +84,14 @@ static void suspended_swinging_rc_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 29, 0, 6, height + 29); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 0); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 0); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -100,7 +100,7 @@ static void suspended_swinging_rc_track_station( /** rct2: 0x008A8968 */ static void suspended_swinging_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -109,22 +109,22 @@ static void suspended_swinging_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26001, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26001, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26002, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26002, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26003, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26003, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26004, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26004, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -135,22 +135,22 @@ static void suspended_swinging_rc_track_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25973, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25973, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25974, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25974, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25975, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25975, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25976, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25976, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 45); break; } @@ -158,25 +158,25 @@ static void suspended_swinging_rc_track_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 62, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 62, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -194,29 +194,29 @@ static void suspended_swinging_rc_track_25_deg_up( /** rct2: 0x008A8978 */ static void suspended_swinging_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25989, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25989, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25990, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25990, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25991, 0, 0, 32, 2, 81, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25991, 0, 0, 32, 2, 81, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25992, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25992, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 93); break; } @@ -235,7 +235,7 @@ static void suspended_swinging_rc_track_60_deg_up( /** rct2: 0x008A8988 */ static void suspended_swinging_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -244,22 +244,22 @@ static void suspended_swinging_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25993, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25993, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25994, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25994, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25995, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25995, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25996, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25996, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -270,22 +270,22 @@ static void suspended_swinging_rc_track_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25965, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25965, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25966, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25966, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25967, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25967, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25968, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25968, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -293,25 +293,25 @@ static void suspended_swinging_rc_track_flat_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -329,35 +329,35 @@ static void suspended_swinging_rc_track_flat_to_25_deg_up( /** rct2: 0x008A8998 */ static void suspended_swinging_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25977, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25977, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25981, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25981, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25978, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25978, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25982, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25982, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25979, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25979, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25980, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25980, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -376,7 +376,7 @@ static void suspended_swinging_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008A89A8 */ static void suspended_swinging_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -385,28 +385,28 @@ static void suspended_swinging_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25983, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25983, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25987, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25987, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26090, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26090, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25988, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25988, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25985, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25985, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25986, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25986, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -417,28 +417,28 @@ static void suspended_swinging_rc_track_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25983, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25983, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25987, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25987, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25984, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25984, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25988, 0, 0, 32, 10, 49, height + 29, 0, 10, + session, direction, session.TrackColours[SCHEME_TRACK] | 25988, 0, 0, 32, 10, 49, height + 29, 0, 10, height + 11); PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25985, 0, 0, 32, 2, 49, height + 29, 0, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25985, 0, 0, 32, 2, 49, height + 29, 0, 4, height + 11); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25986, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25986, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 61); break; } @@ -446,25 +446,25 @@ static void suspended_swinging_rc_track_60_deg_up_to_25_deg_up( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 76, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 76, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -482,7 +482,7 @@ static void suspended_swinging_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008A89B8 */ static void suspended_swinging_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackElement.HasChain()) @@ -491,22 +491,22 @@ static void suspended_swinging_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25997, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25997, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25998, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25998, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25999, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25999, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26000, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26000, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -517,22 +517,22 @@ static void suspended_swinging_rc_track_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25969, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25969, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25970, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25970, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25971, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25971, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25972, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25972, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 37); break; } @@ -540,25 +540,25 @@ static void suspended_swinging_rc_track_25_deg_up_to_flat( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -576,7 +576,7 @@ static void suspended_swinging_rc_track_25_deg_up_to_flat( /** rct2: 0x008A89C8 */ static void suspended_swinging_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -584,7 +584,7 @@ static void suspended_swinging_rc_track_25_deg_down( /** rct2: 0x008A89D8 */ static void suspended_swinging_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -592,7 +592,7 @@ static void suspended_swinging_rc_track_60_deg_down( /** rct2: 0x008A89E8 */ static void suspended_swinging_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -600,7 +600,7 @@ static void suspended_swinging_rc_track_flat_to_25_deg_down( /** rct2: 0x008A89F8 */ static void suspended_swinging_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -608,7 +608,7 @@ static void suspended_swinging_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A8A08 */ static void suspended_swinging_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -616,7 +616,7 @@ static void suspended_swinging_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A8A18 */ static void suspended_swinging_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_swinging_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -624,7 +624,7 @@ static void suspended_swinging_rc_track_25_deg_down_to_flat( /** rct2: 0x008A8A28 */ static void suspended_swinging_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -634,22 +634,22 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26014, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26014, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26019, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26019, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26024, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26024, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26009, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26009, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -658,7 +658,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -674,20 +674,20 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26013, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26013, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26018, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26018, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26023, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26023, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26008, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26008, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -703,22 +703,22 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26012, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26012, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26017, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26017, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26022, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26022, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26007, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26007, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -733,20 +733,20 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26011, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26011, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26016, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26016, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26021, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26021, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26006, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26006, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 29); break; } @@ -762,22 +762,22 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26010, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26010, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26015, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26015, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26020, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26020, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26005, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26005, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -786,7 +786,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -804,7 +804,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5( /** rct2: 0x008A8A38 */ static void suspended_swinging_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -813,7 +813,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_5( /** rct2: 0x008A8A48 */ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -823,19 +823,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26097, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26097, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26102, 0, 6, 32, 20, 11, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26102, 0, 6, 32, 20, 11, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26107, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26107, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26112, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26112, 0, 6, 32, 20, 3, height + 29); break; } @@ -843,7 +843,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -859,19 +859,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26098, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26098, 0, 0, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26103, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26103, 0, 0, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26108, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26108, 0, 16, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26113, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26113, 0, 16, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -886,19 +886,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26099, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26099, 0, 16, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26104, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26104, 16, 16, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26109, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26109, 16, 0, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26114, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26114, 0, 0, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -913,19 +913,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26100, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26100, 16, 0, 16, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26105, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26105, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26110, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26110, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26115, 16, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26115, 16, 0, 16, 32, 3, height + 29, 16, 0, height + 37); break; } @@ -941,19 +941,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26101, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26101, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26106, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26106, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26111, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26111, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26116, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26116, 6, 0, 20, 32, 3, height + 29); break; } @@ -961,7 +961,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -979,7 +979,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008A8A58 */ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -989,19 +989,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26077, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26077, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26082, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26082, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26087, 0, 6, 32, 20, 11, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26087, 0, 6, 32, 20, 11, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26092, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26092, 0, 6, 32, 20, 3, height + 29); break; } @@ -1009,7 +1009,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1025,19 +1025,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26078, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26078, 0, 16, 32, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26083, 0, 16, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26083, 0, 16, 32, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26088, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26088, 0, 0, 32, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26093, 0, 0, 32, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26093, 0, 0, 32, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1052,19 +1052,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26079, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26079, 0, 0, 16, 16, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26084, 16, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26084, 16, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26089, 16, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26089, 16, 16, 16, 16, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26094, 0, 16, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26094, 0, 16, 16, 16, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1079,20 +1079,20 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26080, 16, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26080, 16, 0, 16, 32, 3, height + 29, 16, 0, height + 37); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26085, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26085, 0, 0, 16, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26090, 0, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26090, 0, 0, 16, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26095, 16, 0, 16, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26095, 16, 0, 16, 32, 3, height + 29); break; } paint_util_set_segment_support_height( @@ -1107,19 +1107,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26081, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26081, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26086, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26086, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26091, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26091, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26096, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26096, 6, 0, 20, 32, 3, height + 29); break; } @@ -1127,7 +1127,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1145,7 +1145,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008A8A68 */ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1155,7 +1155,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008A8A78 */ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1165,7 +1165,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008A8A88 */ static void suspended_swinging_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1175,26 +1175,26 @@ static void suspended_swinging_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26139, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26139, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26146, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26146, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26142, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26142, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26143, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26143, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1207,19 +1207,19 @@ static void suspended_swinging_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26140, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26140, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26145, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26145, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26141, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26141, 0, 6, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26144, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26144, 0, 6, 32, 26, 3, height + 29); break; } @@ -1232,11 +1232,11 @@ static void suspended_swinging_rc_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1247,19 +1247,19 @@ static void suspended_swinging_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26141, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26141, 0, 6, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26144, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26144, 0, 6, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26140, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26140, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26145, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26145, 0, 0, 32, 26, 3, height + 29); break; } @@ -1272,11 +1272,11 @@ static void suspended_swinging_rc_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1287,26 +1287,26 @@ static void suspended_swinging_rc_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26142, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26142, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26143, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26143, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26139, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26139, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26146, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26146, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1324,7 +1324,7 @@ static void suspended_swinging_rc_track_s_bend_left( /** rct2: 0x008A8A98 */ static void suspended_swinging_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1334,26 +1334,26 @@ static void suspended_swinging_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26135, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26135, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26150, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26150, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26138, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26138, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26147, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26147, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1366,19 +1366,19 @@ static void suspended_swinging_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26136, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26136, 0, 6, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26149, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26149, 0, 6, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26137, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26137, 0, 0, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26148, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26148, 0, 0, 32, 26, 3, height + 29); break; } @@ -1391,11 +1391,11 @@ static void suspended_swinging_rc_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1406,19 +1406,19 @@ static void suspended_swinging_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26137, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26137, 0, 0, 32, 26, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26148, 0, 0, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26148, 0, 0, 32, 26, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26136, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26136, 0, 6, 32, 26, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26149, 0, 6, 32, 26, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26149, 0, 6, 32, 26, 3, height + 29); break; } @@ -1431,11 +1431,11 @@ static void suspended_swinging_rc_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1446,26 +1446,26 @@ static void suspended_swinging_rc_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26138, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26138, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26147, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26147, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26135, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26135, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26150, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26150, 0, 6, 32, 20, 3, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1483,7 +1483,7 @@ static void suspended_swinging_rc_track_s_bend_right( /** rct2: 0x008A8AD8 */ static void suspended_swinging_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1493,22 +1493,22 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26070, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26070, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26073, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26073, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26076, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26076, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26067, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26067, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -1517,7 +1517,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1533,21 +1533,21 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26069, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26069, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26072, 0, 0, 16, 16, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26072, 0, 0, 16, 16, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26075, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26075, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26066, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26066, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -1560,22 +1560,22 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26068, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26068, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26071, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26071, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26074, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26074, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26065, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26065, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 29); break; } @@ -1584,7 +1584,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1602,7 +1602,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3( /** rct2: 0x008A8AE8 */ static void suspended_swinging_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1611,7 +1611,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_3( /** rct2: 0x008A8AF8 */ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1621,19 +1621,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26130, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26130, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26132, 0, 6, 32, 20, 11, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26132, 0, 6, 32, 20, 11, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26134, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26134, 0, 6, 32, 20, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26128, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26128, 0, 6, 32, 20, 3, height + 29); break; } @@ -1641,7 +1641,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1660,19 +1660,19 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26129, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26129, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26131, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26131, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26133, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26133, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26127, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26127, 6, 0, 20, 32, 3, height + 29); break; } @@ -1680,7 +1680,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1698,7 +1698,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008A8B08 */ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1708,19 +1708,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26119, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26119, 0, 6, 32, 20, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26121, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26121, 0, 6, 32, 20, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26123, 0, 6, 32, 20, 11, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26123, 0, 6, 32, 20, 11, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26125, 0, 6, 32, 20, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26125, 0, 6, 32, 20, 3, height + 29); break; } @@ -1728,7 +1728,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1747,19 +1747,19 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26120, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26120, 6, 0, 20, 32, 3, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26122, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26122, 6, 0, 20, 32, 3, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26124, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26124, 6, 0, 20, 32, 3, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26126, 6, 0, 20, 32, 3, height + 29); + session, direction, session.TrackColours[SCHEME_TRACK] | 26126, 6, 0, 20, 32, 3, height + 29); break; } @@ -1767,7 +1767,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -1785,7 +1785,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008A8B18 */ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1795,7 +1795,7 @@ static void suspended_swinging_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008A8B28 */ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1805,7 +1805,7 @@ static void suspended_swinging_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008A8B38 */ static void suspended_swinging_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1813,22 +1813,22 @@ static void suspended_swinging_rc_track_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26117, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26117, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26118, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26118, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); @@ -1837,7 +1837,7 @@ static void suspended_swinging_rc_track_brakes( /** rct2: 0x008A8B48 */ static void suspended_swinging_rc_track_left_quarter_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1847,22 +1847,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26054, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26054, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26059, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26059, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26064, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26064, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26049, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26049, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -1871,7 +1871,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1887,22 +1887,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26053, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26053, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26058, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26058, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26063, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26063, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26048, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26048, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -1918,22 +1918,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26052, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26052, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26057, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26057, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26062, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26062, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26047, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26047, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -1949,22 +1949,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26051, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26051, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26056, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26056, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26061, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26061, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26046, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26046, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -1980,22 +1980,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26050, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26050, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26055, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26055, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26060, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26060, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26045, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26045, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -2004,7 +2004,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2022,7 +2022,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_up( /** rct2: 0x008A8B58 */ static void suspended_swinging_rc_track_right_quarter_helix_large_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2032,22 +2032,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26025, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26025, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26030, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26030, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26035, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26035, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26040, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26040, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 35); break; } @@ -2056,7 +2056,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2072,22 +2072,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26026, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26026, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26031, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26031, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26036, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26036, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26041, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26041, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -2103,22 +2103,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26027, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26027, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26032, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26032, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26037, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26037, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26042, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26042, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -2134,22 +2134,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26028, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26028, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26033, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26033, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26038, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26038, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26043, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26043, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -2165,22 +2165,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26029, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26029, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26034, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26034, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26039, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26039, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26044, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26044, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 43); break; } @@ -2189,7 +2189,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2207,7 +2207,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_up( /** rct2: 0x008A8B68 */ static void suspended_swinging_rc_track_left_quarter_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2217,22 +2217,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26034, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26034, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26039, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26039, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26044, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26044, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26029, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26029, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -2241,7 +2241,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2257,22 +2257,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26033, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26033, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26038, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26038, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26043, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26043, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26028, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26028, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -2288,22 +2288,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26032, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26032, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26037, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26037, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26042, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26042, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26027, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26027, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -2319,22 +2319,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26031, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26031, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26036, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26036, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26041, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26041, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26026, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26026, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -2350,22 +2350,22 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26030, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26030, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26035, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26035, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26040, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26040, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26025, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26025, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -2374,7 +2374,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2392,7 +2392,7 @@ static void suspended_swinging_rc_track_left_quarter_helix_large_down( /** rct2: 0x008A8B78 */ static void suspended_swinging_rc_track_right_quarter_helix_large_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2402,22 +2402,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26045, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26045, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26050, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26050, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26055, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26055, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26060, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26060, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 43); break; } @@ -2426,7 +2426,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2442,22 +2442,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26046, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26046, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26051, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26051, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26056, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26056, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26061, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26061, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 43); break; } @@ -2473,22 +2473,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26047, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26047, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26052, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26052, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26057, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26057, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26062, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26062, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 43); break; } @@ -2504,22 +2504,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26048, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26048, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26053, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26053, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26058, 0, 0, 16, 32, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26058, 0, 0, 16, 32, 3, height + 29, 0, 0, height + 43); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26063, 0, 0, 16, 32, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26063, 0, 0, 16, 32, 3, height + 29, 16, 0, height + 43); break; } @@ -2535,22 +2535,22 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26049, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26049, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26054, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26054, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26059, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26059, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26064, 0, 0, 20, 32, 3, height + 29, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26064, 0, 0, 20, 32, 3, height + 29, 6, 0, height + 35); break; } @@ -2559,7 +2559,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -2577,7 +2577,7 @@ static void suspended_swinging_rc_track_right_quarter_helix_large_down( /** rct2: 0x008A8B88 */ static void suspended_swinging_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2587,22 +2587,22 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26167, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26167, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26171, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26171, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26175, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26175, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26179, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26179, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2610,7 +2610,7 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2623,22 +2623,22 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26168, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26168, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26172, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26172, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26176, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26176, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26180, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26180, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -2654,22 +2654,22 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26169, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26169, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26173, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26173, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26177, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26177, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26181, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26181, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -2688,22 +2688,22 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26170, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26170, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26174, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26174, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26178, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26178, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26182, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26182, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; } @@ -2717,19 +2717,19 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2740,7 +2740,7 @@ static void suspended_swinging_rc_track_left_eighth_to_diag( /** rct2: 0x008A8B98 */ static void suspended_swinging_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2750,22 +2750,22 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26151, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26151, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26155, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26155, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26159, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26159, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26163, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26163, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } @@ -2773,7 +2773,7 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -2786,22 +2786,22 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26152, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26152, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26156, 0, 0, 32, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26156, 0, 0, 32, 16, 3, height + 29, 0, 16, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26160, 0, 0, 34, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26160, 0, 0, 34, 16, 3, height + 29, 0, 0, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26164, 0, 0, 32, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26164, 0, 0, 32, 16, 3, height + 29, 0, 0, height + 29); break; } @@ -2817,22 +2817,22 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26153, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26153, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26157, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26157, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26161, 0, 0, 28, 28, 3, height + 29, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 26161, 0, 0, 28, 28, 3, height + 29, 4, 4, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26165, 0, 0, 16, 16, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26165, 0, 0, 16, 16, 3, height + 29, 0, 16, height + 29); break; } @@ -2851,22 +2851,22 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26154, 0, 0, 16, 16, 3, height + 29, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26154, 0, 0, 16, 16, 3, height + 29, 16, 0, height + 29); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26158, 0, 0, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26158, 0, 0, 16, 16, 3, height + 29, 0, 0, height + 29); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26162, 0, 0, 16, 18, 3, height + 29, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26162, 0, 0, 16, 18, 3, height + 29, 0, 16, height + 29); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26166, 0, 0, 16, 16, 3, height + 29, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26166, 0, 0, 16, 16, 3, height + 29, 16, 16, height + 29); break; } @@ -2880,19 +2880,19 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -2903,7 +2903,7 @@ static void suspended_swinging_rc_track_right_eighth_to_diag( /** rct2: 0x008A8BA8 */ static void suspended_swinging_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -2912,7 +2912,7 @@ static void suspended_swinging_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008A8BB8 */ static void suspended_swinging_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -2921,7 +2921,7 @@ static void suspended_swinging_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008A8BC8 */ static void suspended_swinging_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2933,7 +2933,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26214, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26214, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -2944,7 +2944,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26186, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26186, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -2960,7 +2960,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26211, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26211, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -2971,7 +2971,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26183, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26183, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -2987,7 +2987,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26213, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26213, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -2998,7 +2998,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26185, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26185, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -3014,7 +3014,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26212, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26212, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -3025,7 +3025,7 @@ static void suspended_swinging_rc_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26184, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26184, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -3037,19 +3037,19 @@ static void suspended_swinging_rc_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3060,7 +3060,7 @@ static void suspended_swinging_rc_track_diag_flat( /** rct2: 0x008A8BF8 */ static void suspended_swinging_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3072,7 +3072,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26226, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26226, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3083,7 +3083,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26198, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26198, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3099,7 +3099,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26223, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26223, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3110,7 +3110,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26195, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26195, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3126,7 +3126,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26225, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26225, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3137,7 +3137,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26197, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26197, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3153,7 +3153,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26224, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26224, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3164,7 +3164,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26196, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26196, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3176,19 +3176,19 @@ static void suspended_swinging_rc_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3199,7 +3199,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up( /** rct2: 0x008A8C58 */ static void suspended_swinging_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3209,7 +3209,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26210, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26210, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3222,7 +3222,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26207, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26207, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3235,7 +3235,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26209, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26209, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3248,7 +3248,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26208, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26208, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -3259,19 +3259,19 @@ static void suspended_swinging_rc_track_diag_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 32, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 32, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 36, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 36, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 32, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 32, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 36, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 36, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3282,7 +3282,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up( /** rct2: 0x008A8BD8 */ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3294,7 +3294,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26218, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26218, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3305,7 +3305,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26190, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26190, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3321,7 +3321,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26215, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26215, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3332,7 +3332,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26187, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26187, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3348,7 +3348,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26217, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26217, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3359,7 +3359,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26189, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26189, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3375,7 +3375,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26216, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26216, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3386,7 +3386,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26188, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26188, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3398,19 +3398,19 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3421,7 +3421,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008A8C38 */ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3431,7 +3431,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26202, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26202, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3444,7 +3444,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26199, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26199, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3457,7 +3457,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26201, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26201, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3470,7 +3470,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26200, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26200, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3481,19 +3481,19 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 16, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 16, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3504,7 +3504,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008A8C48 */ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3514,7 +3514,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26206, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26206, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3527,7 +3527,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26203, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26203, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3540,7 +3540,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26205, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26205, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -3553,7 +3553,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26204, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26204, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -3564,19 +3564,19 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 21, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 21, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3587,7 +3587,7 @@ static void suspended_swinging_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008A8BE8 */ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3599,7 +3599,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26222, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26222, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3610,7 +3610,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26194, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26194, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3626,7 +3626,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26219, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26219, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3637,7 +3637,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26191, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26191, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3653,7 +3653,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26221, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26221, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3664,7 +3664,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26193, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26193, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3680,7 +3680,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26220, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26220, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3691,7 +3691,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26192, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26192, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3703,19 +3703,19 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3726,7 +3726,7 @@ static void suspended_swinging_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008A8C28 */ static void suspended_swinging_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3738,7 +3738,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26224, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26224, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3749,7 +3749,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26196, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26196, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3765,7 +3765,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26225, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26225, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3776,7 +3776,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26197, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26197, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3792,7 +3792,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26223, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26223, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3803,7 +3803,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26195, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26195, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3819,7 +3819,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26226, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26226, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3830,7 +3830,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26198, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26198, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 45); break; } @@ -3842,19 +3842,19 @@ static void suspended_swinging_rc_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 56, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 56, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -3865,7 +3865,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down( /** rct2: 0x008A8C88 */ static void suspended_swinging_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3875,7 +3875,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26208, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26208, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 29); break; } @@ -3888,7 +3888,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26209, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26209, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3901,7 +3901,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26207, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26207, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3914,7 +3914,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26210, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26210, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 93); break; } @@ -3927,7 +3927,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down( /** rct2: 0x008A8C08 */ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3939,7 +3939,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26220, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26220, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3950,7 +3950,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26192, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26192, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3965,7 +3965,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26221, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26221, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3976,7 +3976,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26193, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26193, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -3991,7 +3991,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26219, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26219, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4002,7 +4002,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26191, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26191, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4017,7 +4017,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26222, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26222, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4028,7 +4028,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26194, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26194, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4040,19 +4040,19 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -4063,7 +4063,7 @@ static void suspended_swinging_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008A8C68 */ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4073,7 +4073,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26204, -16, -16, 16, 16, 3, height + 29, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 26204, -16, -16, 16, 16, 3, height + 29, 0, 0, height + 61); break; } @@ -4086,7 +4086,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26205, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26205, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4099,7 +4099,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26203, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26203, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4112,7 +4112,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26206, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26206, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4123,19 +4123,19 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 17, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 17, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4146,7 +4146,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008A8C78 */ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4156,7 +4156,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26200, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26200, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4169,7 +4169,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26201, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26201, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4182,7 +4182,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26199, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26199, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4195,7 +4195,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26202, -16, -16, 32, 32, 3, height + 29, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 26202, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 61); break; } @@ -4206,19 +4206,19 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( { case 0: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_b_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 8, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 8, height + 44, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4229,7 +4229,7 @@ static void suspended_swinging_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008A8C18 */ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4241,7 +4241,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26216, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26216, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4252,7 +4252,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26188, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26188, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4268,7 +4268,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26217, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26217, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4279,7 +4279,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26189, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26189, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4295,7 +4295,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26215, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26215, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4306,7 +4306,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26187, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26187, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4322,7 +4322,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26218, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26218, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4333,7 +4333,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26190, -16, -16, 32, 32, 3, height + 29, + session, direction, session.TrackColours[SCHEME_TRACK] | 26190, -16, -16, 32, 32, 3, height + 29, -16, -16, height + 37); break; } @@ -4345,19 +4345,19 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -4368,7 +4368,7 @@ static void suspended_swinging_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008A8B38 */ static void suspended_swinging_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -4376,22 +4376,22 @@ static void suspended_swinging_rc_track_block_brakes( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26117, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26117, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 26118, 0, 0, 32, 20, 3, height + 29, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 26118, 0, 0, 32, 20, 3, height + 29, 0, 6, height + 29); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height + 44, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_INVERTED_3); diff --git a/src/openrct2/ride/coaster/VirginiaReel.cpp b/src/openrct2/ride/coaster/VirginiaReel.cpp index 27278f32a2..0a780e431b 100644 --- a/src/openrct2/ride/coaster/VirginiaReel.cpp +++ b/src/openrct2/ride/coaster/VirginiaReel.cpp @@ -164,10 +164,10 @@ static constexpr const uint32_t virginia_reel_track_pieces_flat_quarter_turn_1_t * rct2: 0x006D5B48 */ void vehicle_visual_virginia_reel( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { - const uint8_t rotation = session->CurrentRotation; + const uint8_t rotation = session.CurrentRotation; int32_t ecx = ((vehicle->spin_sprite / 8) + (rotation * 8)) & 31; int32_t baseImage_id = [&] { switch (vehicle->Pitch) @@ -197,7 +197,7 @@ void vehicle_visual_virginia_reel( session, image_id, { 0, 0, z }, { bb->length_x, bb->length_y, bb->length_z }, { bb->offset_x, bb->offset_y, bb->offset_z + z }); - if (session->DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) + if (session.DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) { uint8_t riding_peep_sprites[4] = { 0xFF, 0xFF, 0xFF, 0xFF }; for (int32_t i = 0; i < vehicle->num_peeps; i++) @@ -222,7 +222,7 @@ void vehicle_visual_virginia_reel( /** rct2: 0x00811264 */ static void paint_virginia_reel_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint32_t* sprites = virginia_reel_track_pieces_flat; @@ -231,7 +231,7 @@ static void paint_virginia_reel_track_flat( sprites = virginia_reel_track_pieces_flat_lift_hill; } - uint32_t imageId = sprites[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = sprites[direction] | session.TrackColours[SCHEME_TRACK]; if (direction & 1) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height }); @@ -243,7 +243,7 @@ static void paint_virginia_reel_track_flat( paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -251,7 +251,7 @@ static void paint_virginia_reel_track_flat( /** rct2: 0x00811274 */ static void paint_virginia_reel_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint32_t* sprites = virginia_reel_track_pieces_25_deg_up; @@ -260,7 +260,7 @@ static void paint_virginia_reel_track_25_deg_up( sprites = virginia_reel_track_pieces_25_deg_up_lift_hill; } - uint32_t imageId = sprites[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = sprites[direction] | session.TrackColours[SCHEME_TRACK]; paint_struct* ps; if (direction & 1) @@ -274,25 +274,25 @@ static void paint_virginia_reel_track_25_deg_up( if (direction == 1 || direction == 2) { - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; } switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_7); break; case 1: - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_SQUARE_8); break; case 2: - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_SQUARE_8); break; case 3: - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_7); break; } @@ -303,7 +303,7 @@ static void paint_virginia_reel_track_25_deg_up( /** rct2: 0x00811294 */ static void paint_virginia_reel_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint32_t* sprites = virginia_reel_track_pieces_flat_to_25_deg_up; @@ -312,34 +312,34 @@ static void paint_virginia_reel_track_flat_to_25_deg_up( sprites = virginia_reel_track_pieces_flat_to_25_deg_up_lift_hill; } - uint32_t imageId = sprites[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = sprites[direction] | session.TrackColours[SCHEME_TRACK]; paint_struct* ps; switch (direction) { case 0: PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height }); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_8); break; case 2: ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_8); break; case 3: PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height }); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; } @@ -350,7 +350,7 @@ static void paint_virginia_reel_track_flat_to_25_deg_up( /** rct2: 0x00811294 */ static void paint_virginia_reel_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const uint32_t* sprites = virginia_reel_track_pieces_25_deg_up_to_flat; @@ -359,7 +359,7 @@ static void paint_virginia_reel_track_25_deg_up_to_flat( sprites = virginia_reel_track_pieces_25_deg_up_to_flat_lift_hill; } - uint32_t imageId = sprites[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = sprites[direction] | session.TrackColours[SCHEME_TRACK]; paint_struct* ps; if (direction & 1) @@ -373,25 +373,25 @@ static void paint_virginia_reel_track_25_deg_up_to_flat( if (direction == 1 || direction == 2) { - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; } switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_FLAT); break; case 1: - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_14); break; case 2: - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_14); break; case 3: - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_FLAT); break; } @@ -402,7 +402,7 @@ static void paint_virginia_reel_track_25_deg_up_to_flat( /** rct2: 0x008112A4 */ static void paint_virginia_reel_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_virginia_reel_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -410,7 +410,7 @@ static void paint_virginia_reel_track_25_deg_down( /** rct2: 0x008112B4 */ static void paint_virginia_reel_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_virginia_reel_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -418,7 +418,7 @@ static void paint_virginia_reel_track_flat_to_25_deg_down( /** rct2: 0x008112C4 */ static void paint_virginia_reel_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_virginia_reel_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -426,33 +426,33 @@ static void paint_virginia_reel_track_25_deg_down_to_flat( /** rct2: 0x008112D4, 0x008112E4, 0x008112F4 */ static void paint_virginia_reel_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction == 0 || direction == 2) { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height }); - imageId = SPR_VIRGINIA_REEL_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_VIRGINIA_REEL_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 2, height, 0, 0, height); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else if (direction == 1 || direction == 3) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 2 }, { 2, 0, height }); - imageId = SPR_VIRGINIA_REEL_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_VIRGINIA_REEL_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 2, height, 0, 0, height); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -468,11 +468,11 @@ static constexpr const uint8_t virginia_reel_left_quarter_turn_supports[] = { /** rct2: 0x00811304 */ static void paint_virginia_reel_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_3_tiles_paint( - session, 2, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 2, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_3_tiles); track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_SQUARE_FLAT, direction, trackSequence); @@ -485,8 +485,7 @@ static void paint_virginia_reel_track_left_quarter_turn_3_tiles( case 0: case 3: wooden_a_supports_paint_setup( - session, virginia_reel_left_quarter_turn_supports[direction], 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session, virginia_reel_left_quarter_turn_supports[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, paint_util_rotate_segments(SEGMENTS_ALL, direction), 0xFFFF, 0); break; } @@ -503,7 +502,7 @@ static constexpr const uint8_t virginia_reel_right_quarter_turn_3_tiles_to_left_ /** rct2: 0x00811314 */ static void paint_virginia_reel_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = virginia_reel_right_quarter_turn_3_tiles_to_left_turn_map[trackSequence]; @@ -513,28 +512,28 @@ static void paint_virginia_reel_track_right_quarter_turn_3_tiles( /** rct2: 0x00811324 */ static void paint_virginia_reel_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_1_tile_paint( - session, 2, height, 0, direction, session->TrackColours[SCHEME_TRACK], + session, 2, height, 0, direction, session.TrackColours[SCHEME_TRACK], virginia_reel_track_pieces_flat_quarter_turn_1_tile); switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; @@ -546,7 +545,7 @@ static void paint_virginia_reel_track_left_quarter_turn_1_tile( /** rct2: 0x00811334 */ static void paint_virginia_reel_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_virginia_reel_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); diff --git a/src/openrct2/ride/coaster/WildMouse.cpp b/src/openrct2/ride/coaster/WildMouse.cpp index 82b9e706e0..a4b2a8d047 100644 --- a/src/openrct2/ride/coaster/WildMouse.cpp +++ b/src/openrct2/ride/coaster/WildMouse.cpp @@ -165,7 +165,7 @@ static constexpr const uint32_t _wild_mouse_block_brakes_image_ids[NumOrthogonal /** rct2: 0x0078B1E4 */ static void wild_mouse_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -176,11 +176,11 @@ static void wild_mouse_track_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -189,7 +189,7 @@ static void wild_mouse_track_flat( } static void wild_mouse_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t baseImageIds[4] = { @@ -201,22 +201,22 @@ static void wild_mouse_track_station( int32_t trackType = trackElement.GetTrackType(); PaintAddImageAsParentRotated( - session, direction, baseImageIds[direction] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 2, height - 2, 0, 2, + session, direction, baseImageIds[direction] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 2, height - 2, 0, 2, height); if (trackType == TrackElemType::EndStation) { bool isClosed = trackElement.BlockBrakeClosed(); PaintAddImageAsChildRotated( - session, direction, _wild_mouse_block_brakes_image_ids[direction][isClosed] | session->TrackColours[SCHEME_TRACK], - 0, 0, 32, 20, 2, height, 0, 0, height); + session, direction, _wild_mouse_block_brakes_image_ids[direction][isClosed] | session.TrackColours[SCHEME_TRACK], 0, + 0, 32, 20, 2, height, 0, 0, height); } else { PaintAddImageAsChildRotated( - session, direction, _wild_mouse_brakes_image_ids[direction] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 2, + session, direction, _wild_mouse_brakes_image_ids[direction] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 2, height, 0, 0, height); } - track_paint_util_draw_station_metal_supports(session, direction, height, session->TrackColours[SCHEME_SUPPORTS]); + track_paint_util_draw_station_metal_supports(session, direction, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -225,7 +225,7 @@ static void wild_mouse_track_station( /** rct2: 0x0078B1F4 */ static void wild_mouse_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -236,11 +236,11 @@ static void wild_mouse_track_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -257,7 +257,7 @@ static void wild_mouse_track_25_deg_up( /** rct2: 0x0078B204 */ static void wild_mouse_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -268,7 +268,7 @@ static void wild_mouse_track_60_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); @@ -277,15 +277,15 @@ static void wild_mouse_track_60_deg_up( { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 98, height, 0, 27, height); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { if (direction == 0 || direction == 3) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -33, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -33, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -303,7 +303,7 @@ static void wild_mouse_track_60_deg_up( /** rct2: 0x0078B214 */ static void wild_mouse_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -314,11 +314,11 @@ static void wild_mouse_track_flat_to_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -4, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -335,7 +335,7 @@ static void wild_mouse_track_flat_to_25_deg_up( /** rct2: 0x0078B224 */ static void wild_mouse_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -352,8 +352,8 @@ static void wild_mouse_track_25_deg_up_to_60_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = frontImageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = frontImageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); @@ -363,9 +363,9 @@ static void wild_mouse_track_25_deg_up_to_60_deg_up( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 66, height, 0, 27, height); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -13, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -13, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -382,7 +382,7 @@ static void wild_mouse_track_25_deg_up_to_60_deg_up( /** rct2: 0x0078B234 */ static void wild_mouse_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -399,8 +399,8 @@ static void wild_mouse_track_60_deg_up_to_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = frontImageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = frontImageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); @@ -410,9 +410,9 @@ static void wild_mouse_track_60_deg_up_to_25_deg_up( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 66, height, 0, 27, height); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -21, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -21, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -429,7 +429,7 @@ static void wild_mouse_track_60_deg_up_to_25_deg_up( /** rct2: 0x0078B244 */ static void wild_mouse_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -440,11 +440,11 @@ static void wild_mouse_track_25_deg_up_to_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -7, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -461,7 +461,7 @@ static void wild_mouse_track_25_deg_up_to_flat( /** rct2: 0x0078B254 */ static void wild_mouse_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -469,7 +469,7 @@ static void wild_mouse_track_25_deg_down( /** rct2: 0x0078B264 */ static void wild_mouse_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -477,7 +477,7 @@ static void wild_mouse_track_60_deg_down( /** rct2: 0x0078B274 */ static void wild_mouse_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -485,7 +485,7 @@ static void wild_mouse_track_flat_to_25_deg_down( /** rct2: 0x0078B284 */ static void wild_mouse_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -493,7 +493,7 @@ static void wild_mouse_track_25_deg_down_to_60_deg_down( /** rct2: 0x0078B294 */ static void wild_mouse_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -501,14 +501,14 @@ static void wild_mouse_track_60_deg_down_to_25_deg_down( /** rct2: 0x0078B2A4 */ static void wild_mouse_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void wild_mouse_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][3] = { @@ -535,14 +535,14 @@ static void wild_mouse_track_right_quarter_turn_3( }; track_paint_util_right_quarter_turn_3_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); switch (trackSequence) { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -564,7 +564,7 @@ static void wild_mouse_track_right_quarter_turn_3( } static void wild_mouse_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][2] = { @@ -593,7 +593,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_down( const sprite_bb* sbb = &imageIds[direction][part]; const auto& offset = sbb->offset; PaintAddImageAsParent( - session, sbb->sprite_id | session->TrackColours[SCHEME_TRACK], { offset.x, offset.y, height + offset.z }, + session, sbb->sprite_id | session.TrackColours[SCHEME_TRACK], { offset.x, offset.y, height + offset.z }, sbb->bb_size); } @@ -604,7 +604,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_down( { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -623,7 +623,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_down( } static void wild_mouse_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -632,7 +632,7 @@ static void wild_mouse_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x0078B314 */ static void wild_mouse_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][2] = { @@ -660,7 +660,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_up( int32_t part = trackSequence == 0 ? 0 : 1; const sprite_bb* sbb = &imageIds[direction][part]; PaintAddImageAsParent( - session, sbb->sprite_id | session->TrackColours[SCHEME_TRACK], + session, sbb->sprite_id | session.TrackColours[SCHEME_TRACK], { sbb->offset.x, sbb->offset.y, height + sbb->offset.z }, sbb->bb_size); } @@ -669,18 +669,18 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_up( switch (trackSequence) { case 0: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: if (direction == 2) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, -11, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, -11, height, session.TrackColours[SCHEME_SUPPORTS]); } else { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 4, -9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 4, -9, height, session.TrackColours[SCHEME_SUPPORTS]); } break; } @@ -701,7 +701,7 @@ static void wild_mouse_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x0078B324 */ static void wild_mouse_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -709,7 +709,7 @@ static void wild_mouse_track_left_quarter_turn_3_25_deg_down( } static void wild_mouse_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -718,7 +718,7 @@ static void wild_mouse_track_left_quarter_turn_3( /** rct2: 0x0078B394 */ static void wild_mouse_track_left_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -728,7 +728,7 @@ static void wild_mouse_track_left_quarter_turn_1( SPR_WILD_MOUSE_QUARTER_TURN_1_SE_NW, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; switch (direction) { case 0: @@ -744,7 +744,7 @@ static void wild_mouse_track_left_quarter_turn_1( PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 24, 2 }, { 6, 6, height }); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); 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_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); @@ -753,7 +753,7 @@ static void wild_mouse_track_left_quarter_turn_1( /** rct2: 0x0078B3A4 */ static void wild_mouse_track_right_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_left_quarter_turn_1(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -761,7 +761,7 @@ static void wild_mouse_track_right_quarter_turn_1( /** rct2: 0x0078B354 */ static void wild_mouse_track_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -778,8 +778,8 @@ static void wild_mouse_track_flat_to_60_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = frontImageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = frontImageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); @@ -789,9 +789,9 @@ static void wild_mouse_track_flat_to_60_deg_up( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 2, 43, height, 0, 4, height); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -5, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -5, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) { @@ -808,7 +808,7 @@ static void wild_mouse_track_flat_to_60_deg_up( /** rct2: 0x0078B364 */ static void wild_mouse_track_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -825,8 +825,8 @@ static void wild_mouse_track_60_deg_up_to_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = frontImageIds[direction][isChained] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = frontImageIds[direction][isChained] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); @@ -836,15 +836,15 @@ static void wild_mouse_track_60_deg_up_to_flat( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 1, 24, 43, height, 29, 4, height + 2); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 2, 43, height, 0, 4, height); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { if (direction == 0 || direction == 3) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -17, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, -17, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); } } if (direction == 0 || direction == 3) @@ -862,7 +862,7 @@ static void wild_mouse_track_60_deg_up_to_flat( /** rct2: 0x0078B374 */ static void wild_mouse_track_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_60_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -870,7 +870,7 @@ static void wild_mouse_track_flat_to_60_deg_down( /** rct2: 0x0078B384 */ static void wild_mouse_track_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wild_mouse_track_flat_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -878,14 +878,14 @@ static void wild_mouse_track_60_deg_down_to_flat( /** rct2: 0x0078B344 */ static void wild_mouse_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = _wild_mouse_brakes_image_ids[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = _wild_mouse_brakes_image_ids[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -895,7 +895,7 @@ static void wild_mouse_track_brakes( /** rct2: 0x0078B3C4 */ static void wild_mouse_track_rotation_control_toggle( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -905,11 +905,11 @@ static void wild_mouse_track_rotation_control_toggle( SPR_WILD_MOUSE_ROTATION_CONTROL_TOGGLE_NW_SE, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( @@ -919,15 +919,15 @@ static void wild_mouse_track_rotation_control_toggle( /** rct2: 0x0078B3B4 */ static void wild_mouse_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isClosed = trackElement.BlockBrakeClosed(); - uint32_t imageId = _wild_mouse_block_brakes_image_ids[direction][isClosed] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = _wild_mouse_block_brakes_image_ids[direction][isClosed] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/coaster/WoodenRollerCoaster.cpp b/src/openrct2/ride/coaster/WoodenRollerCoaster.cpp index 40e9b685e7..65ad96c3af 100644 --- a/src/openrct2/ride/coaster/WoodenRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/WoodenRollerCoaster.cpp @@ -393,18 +393,18 @@ static constexpr const uint32_t _wooden_rc_block_brakes_image_ids[4][3] = { { SPR_WOODEN_RC_BLOCK_BRAKES_NW_SE_OPEN, SPR_WOODEN_RC_BLOCK_BRAKES_NW_SE_CLOSED, SPR_WOODEN_RC_BLOCK_BRAKES_RAILS_NW_SE }, }; -static uint32_t wooden_rc_get_track_colour(paint_session* session) +static uint32_t wooden_rc_get_track_colour(paint_session& session) { - return (session->TrackColours[SCHEME_TRACK] & ~0xF80000) | session->TrackColours[SCHEME_SUPPORTS]; + return (session.TrackColours[SCHEME_TRACK] & ~0xF80000) | session.TrackColours[SCHEME_SUPPORTS]; } -static uint32_t wooden_rc_get_rails_colour(paint_session* session) +static uint32_t wooden_rc_get_rails_colour(paint_session& session) { - return session->TrackColours[SCHEME_TRACK]; + return session.TrackColours[SCHEME_TRACK]; } static paint_struct* wooden_rc_track_paint( - paint_session* session, uint32_t imageIdTrack, uint32_t imageIdRails, uint8_t direction, int8_t x_offset, int8_t y_offset, + paint_session& session, uint32_t imageIdTrack, uint32_t imageIdRails, uint8_t direction, int8_t x_offset, int8_t y_offset, int16_t bound_box_length_x, int16_t bound_box_length_y, int8_t bound_box_length_z, int16_t z_offset, int16_t bound_box_offset_x, int16_t bound_box_offset_y, int16_t bound_box_offset_z) { @@ -419,7 +419,7 @@ static paint_struct* wooden_rc_track_paint( z_offset, bound_box_offset_x, bound_box_offset_y, bound_box_offset_z); } -static void wooden_rc_track_paint_bb(paint_session* session, const sprite_bb_2* bb, int16_t height) +static void wooden_rc_track_paint_bb(paint_session& session, const sprite_bb_2* bb, int16_t height) { if (bb->sprite_id_a == 0) return; @@ -438,7 +438,7 @@ static void wooden_rc_track_paint_bb(paint_session* session, const sprite_bb_2* /** rct2: 0x008AC568 */ static void wooden_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -458,14 +458,14 @@ static void wooden_rc_track_flat( wooden_rc_track_paint( session, imageIds[direction][isChained], railsImageIds[direction][isChained], direction, 0, 2, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } static void wooden_rc_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t stationImageIds[4][2] = { @@ -490,7 +490,7 @@ static void wooden_rc_track_station( session, stationImageIds[direction][0], stationImageIds[direction][1], direction, 0, 2, 32, 27, 2, height, 0, 2, height); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station_2(session, ride, direction, height, trackElement, 9, 11); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -499,7 +499,7 @@ static void wooden_rc_track_station( /** rct2: 0x008AC578 */ static void wooden_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][4] = { @@ -567,7 +567,7 @@ static void wooden_rc_track_25_deg_up( session, imageIds[isChained][direction][2], imageIds[isChained][direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -584,7 +584,7 @@ static void wooden_rc_track_25_deg_up( /** rct2: 0x008AC588 */ static void wooden_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -601,10 +601,10 @@ static void wooden_rc_track_60_deg_up( } else { - session->WoodenSupportsPrependTo = wooden_rc_track_paint( + session.WoodenSupportsPrependTo = wooden_rc_track_paint( session, imageIds[direction][0], imageIds[direction][1], direction, 0, 0, 2, 24, 93, height, 28, 4, height - 16); } - wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -621,7 +621,7 @@ static void wooden_rc_track_60_deg_up( /** rct2: 0x008AC598 */ static void wooden_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][4] = { @@ -689,7 +689,7 @@ static void wooden_rc_track_flat_to_25_deg_up( session, imageIds[isChained][direction][2], imageIds[isChained][direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -706,7 +706,7 @@ static void wooden_rc_track_flat_to_25_deg_up( /** rct2: 0x008AC5A8 */ static void wooden_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -743,12 +743,12 @@ static void wooden_rc_track_25_deg_up_to_60_deg_up( } else { - session->WoodenSupportsPrependTo = wooden_rc_track_paint( + session.WoodenSupportsPrependTo = wooden_rc_track_paint( session, imageIds[direction][0], imageIds[direction][1], direction, 0, 0, 2, 24, 43, height, 28, 4, height + 2); wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -765,7 +765,7 @@ static void wooden_rc_track_25_deg_up_to_60_deg_up( /** rct2: 0x008AC5B8 */ static void wooden_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -802,12 +802,12 @@ static void wooden_rc_track_60_deg_up_to_25_deg_up( } else { - session->WoodenSupportsPrependTo = wooden_rc_track_paint( + session.WoodenSupportsPrependTo = wooden_rc_track_paint( session, imageIds[direction][0], imageIds[direction][1], direction, 0, 0, 24, 1, 61, height, 4, 28, height - 16); wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -824,7 +824,7 @@ static void wooden_rc_track_60_deg_up_to_25_deg_up( /** rct2: 0x008AC5C8 */ static void wooden_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][4] = { @@ -892,7 +892,7 @@ static void wooden_rc_track_25_deg_up_to_flat( session, imageIds[isChained][direction][2], imageIds[isChained][direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -909,7 +909,7 @@ static void wooden_rc_track_25_deg_up_to_flat( /** rct2: 0x008AC5D8 */ static void wooden_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -917,7 +917,7 @@ static void wooden_rc_track_25_deg_down( /** rct2: 0x008AC5E8 */ static void wooden_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -925,7 +925,7 @@ static void wooden_rc_track_60_deg_down( /** rct2: 0x008AC5F8 */ static void wooden_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -933,7 +933,7 @@ static void wooden_rc_track_flat_to_25_deg_down( /** rct2: 0x008AC608 */ static void wooden_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -941,7 +941,7 @@ static void wooden_rc_track_25_deg_down_to_60_deg_down( /** rct2: 0x008AC618 */ static void wooden_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -949,14 +949,14 @@ static void wooden_rc_track_60_deg_down_to_25_deg_down( /** rct2: 0x008AC628 */ static void wooden_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void wooden_rc_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb_2 imageIds[2][4][7] = { @@ -1303,7 +1303,7 @@ static void wooden_rc_track_right_quarter_turn_5( if (supportType[direction][trackSequence] != -1) { wooden_a_supports_paint_setup( - session, supportType[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = 0; @@ -1338,7 +1338,7 @@ static void wooden_rc_track_right_quarter_turn_5( } static void wooden_rc_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1347,7 +1347,7 @@ static void wooden_rc_track_left_quarter_turn_5( /** rct2: 0x008AC658 */ static void wooden_rc_track_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -1384,7 +1384,7 @@ static void wooden_rc_track_flat_to_left_bank( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -1392,7 +1392,7 @@ static void wooden_rc_track_flat_to_left_bank( /** rct2: 0x008AC668 */ static void wooden_rc_track_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -1429,7 +1429,7 @@ static void wooden_rc_track_flat_to_right_bank( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -1437,7 +1437,7 @@ static void wooden_rc_track_flat_to_right_bank( /** rct2: 0x008AC678 */ static void wooden_rc_track_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_flat_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -1445,14 +1445,14 @@ static void wooden_rc_track_left_bank_to_flat( /** rct2: 0x008AC688 */ static void wooden_rc_track_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_flat_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void wooden_rc_track_banked_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb_2 imageIds[2][4][7] = { @@ -1799,7 +1799,7 @@ static void wooden_rc_track_banked_right_quarter_turn_5( if (supportType[direction][trackSequence] != -1) { wooden_a_supports_paint_setup( - session, supportType[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = 0; @@ -1834,7 +1834,7 @@ static void wooden_rc_track_banked_right_quarter_turn_5( } static void wooden_rc_track_banked_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1843,7 +1843,7 @@ static void wooden_rc_track_banked_left_quarter_turn_5( /** rct2: 0x008AC6B8 */ static void wooden_rc_track_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -1880,7 +1880,7 @@ static void wooden_rc_track_left_bank_to_25_deg_up( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1895,7 +1895,7 @@ static void wooden_rc_track_left_bank_to_25_deg_up( /** rct2: 0x008AC6C8 */ static void wooden_rc_track_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -1932,7 +1932,7 @@ static void wooden_rc_track_right_bank_to_25_deg_up( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -1947,7 +1947,7 @@ static void wooden_rc_track_right_bank_to_25_deg_up( /** rct2: 0x008AC6D8 */ static void wooden_rc_track_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -1984,7 +1984,7 @@ static void wooden_rc_track_25_deg_up_to_left_bank( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -1999,7 +1999,7 @@ static void wooden_rc_track_25_deg_up_to_left_bank( /** rct2: 0x008AC6E8 */ static void wooden_rc_track_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4] = { @@ -2036,7 +2036,7 @@ static void wooden_rc_track_25_deg_up_to_right_bank( wooden_rc_track_paint( session, imageIds[direction][2], imageIds[direction][3], direction, 0, 0, 32, 1, 9, height, 0, 26, height + 5); } - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_FLAT); @@ -2051,7 +2051,7 @@ static void wooden_rc_track_25_deg_up_to_right_bank( /** rct2: 0x008AC6F8 */ static void wooden_rc_track_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_right_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2059,7 +2059,7 @@ static void wooden_rc_track_left_bank_to_25_deg_down( /** rct2: 0x008AC708 */ static void wooden_rc_track_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2067,7 +2067,7 @@ static void wooden_rc_track_right_bank_to_25_deg_down( /** rct2: 0x008AC718 */ static void wooden_rc_track_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2075,7 +2075,7 @@ static void wooden_rc_track_25_deg_down_to_left_bank( /** rct2: 0x008AC728 */ static void wooden_rc_track_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_bank_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2083,7 +2083,7 @@ static void wooden_rc_track_25_deg_down_to_right_bank( /** rct2: 0x008AC738 */ static void wooden_rc_track_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -2095,7 +2095,7 @@ static void wooden_rc_track_left_bank( wooden_rc_track_paint( session, imageIds[direction][0], imageIds[direction][1], direction, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -2103,7 +2103,7 @@ static void wooden_rc_track_left_bank( /** rct2: 0x008AC748 */ static void wooden_rc_track_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_bank(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -2111,7 +2111,7 @@ static void wooden_rc_track_right_bank( /** rct2: 0x008AC758 */ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2124,7 +2124,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23781, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24647, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2137,21 +2137,21 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24678, 0, 0, 32, 27, 0, height, 0, 2, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23791, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24657, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23796, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24662, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2174,7 +2174,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23782, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24648, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2187,7 +2187,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24679, 0, 0, 32, 16, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2196,7 +2196,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24658, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2211,7 +2211,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24685, 0, 0, 32, 16, 0, height, 0, 16, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2231,7 +2231,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24649, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2246,7 +2246,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24680, 0, 0, 16, 16, 0, height, 16, 16, height + 59); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2255,7 +2255,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24659, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2268,7 +2268,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24686, 0, 0, 16, 16, 0, height, 0, 0, height + 59); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2294,7 +2294,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24650, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2307,7 +2307,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24681, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2320,7 +2320,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24683, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2335,7 +2335,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24687, 0, 0, 16, 32, 0, height, 16, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2353,7 +2353,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23785, 0, 0, 27, 32, 2, height, 2, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24651, 0, 0, 27, 32, 2, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2366,7 +2366,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24682, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2379,7 +2379,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24684, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2392,7 +2392,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24688, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2412,7 +2412,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_up( /** rct2: 0x008AC768 */ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2425,14 +2425,14 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23761, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24627, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23766, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24632, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2445,14 +2445,14 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24673, 0, 0, 32, 27, 0, height, 0, 2, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23776, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24642, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2483,7 +2483,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24667, 0, 0, 32, 16, 0, height, 0, 16, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2492,7 +2492,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24633, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2505,14 +2505,14 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24674, 0, 0, 32, 16, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23777, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24643, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2536,7 +2536,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24668, 0, 0, 16, 16, 0, height, 0, 0, height + 59); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2545,7 +2545,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24634, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2560,7 +2560,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24675, 0, 0, 16, 16, 0, height, 16, 16, height + 59); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2569,7 +2569,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24644, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2601,7 +2601,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24669, 0, 0, 16, 32, 0, height, 16, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2614,7 +2614,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24671, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2627,7 +2627,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24676, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2636,7 +2636,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24645, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2660,7 +2660,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24670, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2673,7 +2673,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24672, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2686,14 +2686,14 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24677, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23780, 0, 0, 27, 32, 2, height, 2, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24646, 0, 0, 27, 32, 2, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2713,7 +2713,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_up( /** rct2: 0x008AC778 */ static void wooden_rc_track_left_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -2722,7 +2722,7 @@ static void wooden_rc_track_left_quarter_turn_5_25_deg_down( /** rct2: 0x008AC788 */ static void wooden_rc_track_right_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -2731,7 +2731,7 @@ static void wooden_rc_track_right_quarter_turn_5_25_deg_down( /** rct2: 0x008AC798 */ static void wooden_rc_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2744,7 +2744,7 @@ static void wooden_rc_track_s_bend_left( session, direction, wooden_rc_get_track_colour(session) | 23725, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24591, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2757,14 +2757,14 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24607, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23728, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24594, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2777,7 +2777,7 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24610, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -2795,7 +2795,7 @@ static void wooden_rc_track_s_bend_left( session, direction, wooden_rc_get_track_colour(session) | 23726, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24592, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2808,14 +2808,14 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24608, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23727, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24593, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2828,7 +2828,7 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24609, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2846,7 +2846,7 @@ static void wooden_rc_track_s_bend_left( session, direction, wooden_rc_get_track_colour(session) | 23727, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24593, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2859,14 +2859,14 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24609, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23726, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24592, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2879,7 +2879,7 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24608, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -2897,7 +2897,7 @@ static void wooden_rc_track_s_bend_left( session, direction, wooden_rc_get_track_colour(session) | 23728, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24594, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -2910,14 +2910,14 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24610, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23725, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24591, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -2930,7 +2930,7 @@ static void wooden_rc_track_s_bend_left( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24607, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -2950,7 +2950,7 @@ static void wooden_rc_track_s_bend_left( /** rct2: 0x008AC7A8 */ static void wooden_rc_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -2969,14 +2969,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24611, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23737, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24603, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -2989,14 +2989,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24614, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23740, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24606, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3020,14 +3020,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24612, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23738, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24604, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -3040,14 +3040,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24613, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23739, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24605, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3071,14 +3071,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24613, 0, 0, 32, 26, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23739, 0, 0, 32, 26, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24605, 0, 0, 32, 26, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -3091,14 +3091,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24612, 0, 0, 32, 26, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23738, 0, 0, 32, 26, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24604, 0, 0, 32, 26, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3122,14 +3122,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24614, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23740, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24606, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -3142,14 +3142,14 @@ static void wooden_rc_track_s_bend_right( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24611, 0, 0, 32, 25, 0, height, 0, 3, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23737, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24603, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3169,7 +3169,7 @@ static void wooden_rc_track_s_bend_right( /** rct2: 0x008ACE18 */ static void wooden_rc_track_left_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3194,7 +3194,7 @@ static void wooden_rc_track_left_vertical_loop( session, direction, wooden_rc_get_rails_colour(session) | 23468, 0, 6, 32, 20, 7, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -3213,25 +3213,25 @@ static void wooden_rc_track_left_vertical_loop( PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23454, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23462, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23459, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23467, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3356,25 +3356,25 @@ static void wooden_rc_track_left_vertical_loop( PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23459, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23467, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23454, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23462, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -3404,7 +3404,7 @@ static void wooden_rc_track_left_vertical_loop( session, direction, wooden_rc_get_rails_colour(session) | 23461, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3426,7 +3426,7 @@ static void wooden_rc_track_left_vertical_loop( /** rct2: 0x008ACE28 */ static void wooden_rc_track_right_vertical_loop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3451,7 +3451,7 @@ static void wooden_rc_track_right_vertical_loop( session, direction, wooden_rc_get_rails_colour(session) | 23469, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { paint_util_push_tunnel_rotated(session, direction, height - 8, TUNNEL_SQUARE_7); @@ -3465,25 +3465,25 @@ static void wooden_rc_track_right_vertical_loop( PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23483, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23475, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23478, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23470, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -3589,25 +3589,25 @@ static void wooden_rc_track_right_vertical_loop( PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23478, 0, 14, 32, 2, 63, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23470, 0, 0, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23483, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_rails_colour(session) | 23475, 0, 6, 32, 26, 3, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 16, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 16, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 72, 0x20); @@ -3632,7 +3632,7 @@ static void wooden_rc_track_right_vertical_loop( session, direction, wooden_rc_get_rails_colour(session) | 23476, 0, 6, 32, 20, 3, height); break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { case 1: @@ -3651,7 +3651,7 @@ static void wooden_rc_track_right_vertical_loop( /** rct2: 0x008AC7E8 */ static void wooden_rc_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3664,7 +3664,7 @@ static void wooden_rc_track_left_quarter_turn_3( session, direction, wooden_rc_get_track_colour(session) | 23828, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24694, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -3677,14 +3677,14 @@ static void wooden_rc_track_left_quarter_turn_3( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24706, 0, 6, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23834, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24700, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -3697,7 +3697,7 @@ static void wooden_rc_track_left_quarter_turn_3( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24703, 0, 6, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3768,7 +3768,7 @@ static void wooden_rc_track_left_quarter_turn_3( session, direction, wooden_rc_get_track_colour(session) | 23826, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24692, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -3781,14 +3781,14 @@ static void wooden_rc_track_left_quarter_turn_3( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24704, 6, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23832, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24698, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -3801,7 +3801,7 @@ static void wooden_rc_track_left_quarter_turn_3( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24701, 6, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -3821,7 +3821,7 @@ static void wooden_rc_track_left_quarter_turn_3( /** rct2: 0x008AC7F8 */ static void wooden_rc_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -3830,7 +3830,7 @@ static void wooden_rc_track_right_quarter_turn_3( /** rct2: 0x008AC808 */ static void wooden_rc_track_left_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -3843,7 +3843,7 @@ static void wooden_rc_track_left_quarter_turn_3_bank( session, direction, wooden_rc_get_track_colour(session) | 23846, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24712, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -3856,14 +3856,14 @@ static void wooden_rc_track_left_quarter_turn_3_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24724, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23852, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24718, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -3876,7 +3876,7 @@ static void wooden_rc_track_left_quarter_turn_3_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24721, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -3947,7 +3947,7 @@ static void wooden_rc_track_left_quarter_turn_3_bank( session, direction, wooden_rc_get_track_colour(session) | 23844, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24710, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -3960,14 +3960,14 @@ static void wooden_rc_track_left_quarter_turn_3_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24722, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23850, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24716, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -3980,7 +3980,7 @@ static void wooden_rc_track_left_quarter_turn_3_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24719, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4000,7 +4000,7 @@ static void wooden_rc_track_left_quarter_turn_3_bank( /** rct2: 0x008AC818 */ static void wooden_rc_track_right_quarter_turn_3_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4009,7 +4009,7 @@ static void wooden_rc_track_right_quarter_turn_3_bank( /** rct2: 0x008AC828 */ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4022,7 +4022,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23906, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24772, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4035,14 +4035,14 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24785, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23910, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24776, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -4055,7 +4055,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24783, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4081,7 +4081,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23905, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24771, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4094,7 +4094,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24784, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4107,7 +4107,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24786, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -4120,7 +4120,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24782, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4140,7 +4140,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_up( /** rct2: 0x008AC838 */ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4159,14 +4159,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24777, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23897, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24763, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4179,14 +4179,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24780, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23901, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24767, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4218,7 +4218,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24778, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4231,7 +4231,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24779, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4244,14 +4244,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24781, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23902, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24768, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4271,7 +4271,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_up( /** rct2: 0x008AC848 */ static void wooden_rc_track_left_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4280,7 +4280,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down( /** rct2: 0x008AC858 */ static void wooden_rc_track_right_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -4289,7 +4289,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down( /** rct2: 0x008ACAB8 */ static void wooden_rc_track_left_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4302,7 +4302,7 @@ static void wooden_rc_track_left_half_banked_helix_up_small( session, direction, wooden_rc_get_track_colour(session) | 23882, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24748, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4315,14 +4315,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24760, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23888, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24754, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -4335,7 +4335,7 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24757, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4353,16 +4353,16 @@ static void wooden_rc_track_left_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -4425,7 +4425,7 @@ static void wooden_rc_track_left_half_banked_helix_up_small( session, direction, wooden_rc_get_track_colour(session) | 23880, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24746, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4438,14 +4438,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24758, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23886, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24752, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -4458,7 +4458,7 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24755, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4491,14 +4491,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24757, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23882, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24748, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4511,14 +4511,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24760, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23888, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24754, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4541,16 +4541,16 @@ static void wooden_rc_track_left_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -4619,14 +4619,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24755, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23880, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24746, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4639,14 +4639,14 @@ static void wooden_rc_track_left_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24758, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23886, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24752, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4665,7 +4665,7 @@ static void wooden_rc_track_left_half_banked_helix_up_small( /** rct2: 0x008ACAC8 */ static void wooden_rc_track_right_half_banked_helix_up_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -4684,14 +4684,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24737, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23862, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24728, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4704,14 +4704,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24740, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23868, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24734, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -4729,16 +4729,16 @@ static void wooden_rc_track_right_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -4807,14 +4807,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24739, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23864, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24730, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -4827,14 +4827,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24742, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23870, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24736, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4861,7 +4861,7 @@ static void wooden_rc_track_right_half_banked_helix_up_small( session, direction, wooden_rc_get_track_colour(session) | 23862, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24728, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -4874,14 +4874,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24740, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23868, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24734, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -4894,7 +4894,7 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24737, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -4917,16 +4917,16 @@ static void wooden_rc_track_right_half_banked_helix_up_small( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_general_support_height(session, height + 32, 0x20); @@ -4989,7 +4989,7 @@ static void wooden_rc_track_right_half_banked_helix_up_small( session, direction, wooden_rc_get_track_colour(session) | 23864, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24730, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5002,14 +5002,14 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24742, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23870, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24736, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5022,7 +5022,7 @@ static void wooden_rc_track_right_half_banked_helix_up_small( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24739, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5041,7 +5041,7 @@ static void wooden_rc_track_right_half_banked_helix_up_small( /** rct2: 0x008ACAD8 */ static void wooden_rc_track_left_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5055,7 +5055,7 @@ static void wooden_rc_track_left_half_banked_helix_down_small( /** rct2: 0x008ACAE8 */ static void wooden_rc_track_right_half_banked_helix_down_small( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 4) @@ -5069,7 +5069,7 @@ static void wooden_rc_track_right_half_banked_helix_down_small( /** rct2: 0x008ACAF8 */ static void wooden_rc_track_left_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5082,7 +5082,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23704, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24570, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5095,14 +5095,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24590, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23714, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24580, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5115,7 +5115,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24585, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5142,7 +5142,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23703, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24569, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5155,7 +5155,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24589, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5164,7 +5164,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24579, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5179,7 +5179,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24584, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5199,7 +5199,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24568, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5214,7 +5214,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24588, 0, 0, 16, 16, 0, height, 16, 16, height + 29); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5223,7 +5223,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24578, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5236,7 +5236,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24583, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5260,7 +5260,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24567, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5273,14 +5273,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24587, 0, 0, 16, 32, 0, height, 0, 0, height + 33); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23711, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24577, 0, 0, 16, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5295,7 +5295,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24582, 0, 0, 16, 32, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5313,7 +5313,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23700, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24566, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5326,14 +5326,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24586, 0, 0, 27, 32, 0, height, 2, 0, height + 33); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23710, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24576, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5346,7 +5346,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24581, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5379,14 +5379,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24585, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23704, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24570, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5399,14 +5399,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24590, 0, 0, 27, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23714, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24580, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5446,14 +5446,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24584, 0, 0, 16, 32, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23703, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24569, 0, 0, 16, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5466,7 +5466,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24589, 0, 0, 16, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5475,7 +5475,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24579, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5499,7 +5499,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24583, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5508,7 +5508,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24568, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5523,7 +5523,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24588, 0, 0, 16, 16, 0, height, 16, 16, height + 29); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5532,7 +5532,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24578, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5562,7 +5562,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24582, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5571,7 +5571,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24567, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5584,14 +5584,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24587, 0, 0, 32, 16, 0, height, 0, 0, height + 33); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23711, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24577, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5615,14 +5615,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24581, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23700, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24566, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5635,14 +5635,14 @@ static void wooden_rc_track_left_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24586, 0, 0, 32, 27, 0, height, 0, 2, height + 33); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23710, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24576, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5661,7 +5661,7 @@ static void wooden_rc_track_left_half_banked_helix_up_large( /** rct2: 0x008ACB08 */ static void wooden_rc_track_right_half_banked_helix_up_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -5680,14 +5680,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24551, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23670, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24536, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5700,14 +5700,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24556, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23680, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24546, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -5742,7 +5742,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24552, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5751,7 +5751,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24537, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5764,14 +5764,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24557, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23681, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24547, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5795,7 +5795,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24553, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5804,7 +5804,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24538, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5819,7 +5819,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24558, 0, 0, 16, 16, 0, height, 16, 16, height + 29); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5828,7 +5828,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24548, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5858,14 +5858,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24554, 0, 0, 16, 32, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23673, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24539, 0, 0, 16, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5878,7 +5878,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24559, 0, 0, 16, 32, 0, height, 0, 0, height + 33); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5887,7 +5887,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24549, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -5911,14 +5911,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24555, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23674, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24540, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -5931,14 +5931,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24560, 0, 0, 27, 32, 0, height, 2, 0, height + 33); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23684, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24550, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -5965,7 +5965,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23670, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24536, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -5978,14 +5978,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24556, 0, 0, 27, 32, 0, height, 2, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23680, 0, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24546, 0, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -5998,7 +5998,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24551, 0, 0, 20, 32, 0, height, 6, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -6032,7 +6032,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24537, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6045,14 +6045,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24557, 0, 0, 16, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23681, 0, 0, 16, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24547, 0, 0, 16, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6067,7 +6067,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24552, 0, 0, 16, 32, 0, height, 16, 0, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6087,7 +6087,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24538, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6102,7 +6102,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24558, 0, 0, 16, 16, 0, height, 16, 16, height + 29); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6111,7 +6111,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24548, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6124,7 +6124,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24553, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6146,7 +6146,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23673, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24539, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6159,7 +6159,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24559, 0, 0, 32, 16, 0, height, 0, 0, height + 33); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6168,7 +6168,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24549, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6183,7 +6183,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24554, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -6201,7 +6201,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( session, direction, wooden_rc_get_track_colour(session) | 23674, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24540, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6214,14 +6214,14 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24560, 0, 0, 32, 27, 0, height, 0, 2, height + 33); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23684, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24550, 0, 0, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -6234,7 +6234,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24555, 0, 0, 32, 20, 0, height, 0, 6, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -6253,7 +6253,7 @@ static void wooden_rc_track_right_half_banked_helix_up_large( /** rct2: 0x008ACB18 */ static void wooden_rc_track_left_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6267,7 +6267,7 @@ static void wooden_rc_track_left_half_banked_helix_down_large( /** rct2: 0x008ACB28 */ static void wooden_rc_track_right_half_banked_helix_down_large( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence >= 7) @@ -6281,7 +6281,7 @@ static void wooden_rc_track_right_half_banked_helix_down_large( /** rct2: 0x008ACB98 */ static void wooden_rc_track_left_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6334,7 +6334,7 @@ static void wooden_rc_track_left_quarter_turn_1_60_deg_up( /** rct2: 0x008ACB78 */ static void wooden_rc_track_right_quarter_turn_1_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6387,7 +6387,7 @@ static void wooden_rc_track_right_quarter_turn_1_60_deg_up( /** rct2: 0x008ACB88 */ static void wooden_rc_track_left_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); @@ -6395,7 +6395,7 @@ static void wooden_rc_track_left_quarter_turn_1_60_deg_down( /** rct2: 0x008ACBA8 */ static void wooden_rc_track_right_quarter_turn_1_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_quarter_turn_1_60_deg_up(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -6403,7 +6403,7 @@ static void wooden_rc_track_right_quarter_turn_1_60_deg_down( /** rct2: 0x008AC868 */ static void wooden_rc_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -6415,7 +6415,7 @@ static void wooden_rc_track_brakes( wooden_rc_track_paint( session, imageIds[direction][0], imageIds[direction][1], direction, 0, 2, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -6423,7 +6423,7 @@ static void wooden_rc_track_brakes( /** rct2: 0x008ACC78 */ static void wooden_rc_track_25_deg_up_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6433,7 +6433,7 @@ static void wooden_rc_track_25_deg_up_left_banked( session, direction, wooden_rc_get_track_colour(session) | 24249, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25115, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6444,7 +6444,7 @@ static void wooden_rc_track_25_deg_up_left_banked( session, direction, wooden_rc_get_track_colour(session) | 24257, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25123, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6455,14 +6455,14 @@ static void wooden_rc_track_25_deg_up_left_banked( session, direction, wooden_rc_get_track_colour(session) | 24258, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25124, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24252, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25118, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -6479,7 +6479,7 @@ static void wooden_rc_track_25_deg_up_left_banked( /** rct2: 0x008ACC88 */ static void wooden_rc_track_25_deg_up_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6489,7 +6489,7 @@ static void wooden_rc_track_25_deg_up_right_banked( session, direction, wooden_rc_get_track_colour(session) | 24253, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25119, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -6500,7 +6500,7 @@ static void wooden_rc_track_25_deg_up_right_banked( session, direction, wooden_rc_get_track_colour(session) | 24259, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25125, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -6511,14 +6511,14 @@ static void wooden_rc_track_25_deg_up_right_banked( session, direction, wooden_rc_get_track_colour(session) | 24260, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25126, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24256, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25122, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -6535,7 +6535,7 @@ static void wooden_rc_track_25_deg_up_right_banked( /** rct2: 0x008AC878 */ static void wooden_rc_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -6565,7 +6565,7 @@ static void wooden_rc_track_on_ride_photo( session, direction, wooden_rc_get_rails_colour(session) | 24620, 0, 2, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_onride_photo_small_paint(session, direction, height + 16, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -6574,7 +6574,7 @@ static void wooden_rc_track_on_ride_photo( /** rct2: 0x008ACC98 */ static void wooden_rc_track_25_deg_down_left_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_right_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -6582,7 +6582,7 @@ static void wooden_rc_track_25_deg_down_left_banked( /** rct2: 0x008ACCA8 */ static void wooden_rc_track_25_deg_down_right_banked( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_left_banked(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -6590,10 +6590,10 @@ static void wooden_rc_track_25_deg_down_right_banked( /** rct2: 0x008ACE08 */ static void wooden_rc_track_water_splash( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - const bool transparent = gConfigGeneral.transparent_water || (session->ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE); + const bool transparent = gConfigGeneral.transparent_water || (session.ViewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE); const uint32_t waterOverlay = transparent ? SPR_WATER_OVERLAY : SPR_RCT1_WATER_OVERLAY; switch (trackSequence) @@ -6611,10 +6611,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23997, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23997, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24863, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24863, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23993, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6631,10 +6631,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23998, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23998, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24864, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24864, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23994, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6651,10 +6651,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23995, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23995, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24861, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24861, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23991, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6671,10 +6671,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23996, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23996, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24862, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24862, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23992, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6682,7 +6682,7 @@ static void wooden_rc_track_water_splash( session, direction, wooden_rc_get_rails_colour(session) | 24858, 0, 0, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height + 16, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); @@ -6700,10 +6700,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23985, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23985, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24851, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24851, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23981, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6720,10 +6720,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23986, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23986, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24852, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24852, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23982, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6740,10 +6740,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23983, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23983, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24849, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24849, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23979, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6760,10 +6760,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23984, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23984, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24850, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24850, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23980, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6771,7 +6771,7 @@ static void wooden_rc_track_water_splash( session, direction, wooden_rc_get_rails_colour(session) | 24846, 0, 0, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -6789,10 +6789,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24003, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24003, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24869, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24869, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 24001, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6810,10 +6810,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24004, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24004, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24870, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24870, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 24002, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6821,7 +6821,7 @@ static void wooden_rc_track_water_splash( session, direction, wooden_rc_get_rails_colour(session) | 24868, 0, 0, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -6838,10 +6838,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23983, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23983, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24849, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24849, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23979, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6858,10 +6858,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23984, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23984, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24850, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24850, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23980, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6878,10 +6878,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23985, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23985, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24851, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24851, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23981, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6898,10 +6898,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23986, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23986, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24852, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24852, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23982, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6909,7 +6909,7 @@ static void wooden_rc_track_water_splash( session, direction, wooden_rc_get_rails_colour(session) | 24848, 0, 0, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); break; @@ -6926,10 +6926,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23995, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23995, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24861, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24861, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23991, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6946,10 +6946,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23996, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23996, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24862, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24862, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23992, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6966,10 +6966,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23997, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23997, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24863, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24863, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23993, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6986,10 +6986,10 @@ static void wooden_rc_track_water_splash( PaintAddImageAsChildRotated( session, direction, 0x00000000 | waterOverlay, 0, 0, 32, 25, 2, height + 16, 0, 3, height + 16); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 23998, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 23998, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( - session, direction, session->TrackColours[SCHEME_SUPPORTS] | 24864, 0, 0, 32, 25, 2, height, 0, 3, + session, direction, session.TrackColours[SCHEME_SUPPORTS] | 24864, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_track_colour(session) | 23994, 0, 0, 32, 25, 2, height, 0, 3, height); @@ -6997,7 +6997,7 @@ static void wooden_rc_track_water_splash( session, direction, wooden_rc_get_rails_colour(session) | 24860, 0, 0, 32, 25, 2, height, 0, 3, height); break; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height + 16, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); @@ -7007,7 +7007,7 @@ static void wooden_rc_track_water_splash( /** rct2: 0x008AC958 */ static void wooden_rc_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7020,7 +7020,7 @@ static void wooden_rc_track_left_eighth_to_diag( session, direction, wooden_rc_get_track_colour(session) | 24137, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25003, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7033,14 +7033,14 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25019, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24145, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25011, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7053,7 +7053,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25023, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7071,7 +7071,7 @@ static void wooden_rc_track_left_eighth_to_diag( session, direction, wooden_rc_get_track_colour(session) | 24138, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25004, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7084,7 +7084,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25020, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7093,7 +7093,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25012, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7108,7 +7108,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25024, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7124,7 +7124,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25005, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7139,7 +7139,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25021, 0, 0, 16, 16, 0, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7148,7 +7148,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25013, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7161,7 +7161,7 @@ static void wooden_rc_track_left_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25025, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7171,16 +7171,16 @@ static void wooden_rc_track_left_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7240,7 +7240,7 @@ static void wooden_rc_track_left_eighth_to_diag( /** rct2: 0x008AC968 */ static void wooden_rc_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7259,14 +7259,14 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24995, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24117, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24983, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7279,14 +7279,14 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24999, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24125, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24991, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7312,7 +7312,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24996, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7321,7 +7321,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24984, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7334,14 +7334,14 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25000, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24126, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24992, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7361,7 +7361,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24997, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7370,7 +7370,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24985, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7383,7 +7383,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25001, 0, 0, 28, 28, 0, height, 4, 4, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7392,7 +7392,7 @@ static void wooden_rc_track_right_eighth_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24993, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7402,16 +7402,16 @@ static void wooden_rc_track_right_eighth_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7471,7 +7471,7 @@ static void wooden_rc_track_right_eighth_to_diag( /** rct2: 0x008AC978 */ static void wooden_rc_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7480,7 +7480,7 @@ static void wooden_rc_track_left_eighth_to_orthogonal( /** rct2: 0x008AC988 */ static void wooden_rc_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7489,7 +7489,7 @@ static void wooden_rc_track_right_eighth_to_orthogonal( /** rct2: 0x008AC998 */ static void wooden_rc_track_left_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7502,7 +7502,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( session, direction, wooden_rc_get_track_colour(session) | 24185, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25051, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7515,14 +7515,14 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25067, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24193, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25059, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7535,7 +7535,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25071, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7553,7 +7553,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( session, direction, wooden_rc_get_track_colour(session) | 24186, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25052, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7566,7 +7566,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25068, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7575,7 +7575,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25060, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7590,7 +7590,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25072, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7606,7 +7606,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25053, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7621,7 +7621,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25069, 0, 0, 16, 16, 0, height, 16, 16, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7630,7 +7630,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25061, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7643,7 +7643,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25073, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7653,16 +7653,16 @@ static void wooden_rc_track_left_eighth_bank_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7722,7 +7722,7 @@ static void wooden_rc_track_left_eighth_bank_to_diag( /** rct2: 0x008AC9A8 */ static void wooden_rc_track_right_eighth_bank_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -7741,14 +7741,14 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25043, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24165, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25031, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7761,14 +7761,14 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25047, 0, 0, 32, 32, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24173, 0, 0, 32, 32, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25039, 0, 0, 32, 32, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -7794,7 +7794,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25044, 0, 0, 32, 16, 0, height, 0, 16, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7803,7 +7803,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25032, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7816,14 +7816,14 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25048, 0, 0, 32, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24174, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25040, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7843,7 +7843,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25045, 0, 0, 16, 16, 0, height, 0, 0, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -7852,7 +7852,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25033, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -7865,7 +7865,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25049, 0, 0, 28, 28, 0, height, 4, 4, height + 27); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -7874,7 +7874,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25041, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7884,16 +7884,16 @@ static void wooden_rc_track_right_eighth_bank_to_diag( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -7953,7 +7953,7 @@ static void wooden_rc_track_right_eighth_bank_to_diag( /** rct2: 0x008AC9B8 */ static void wooden_rc_track_left_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7962,7 +7962,7 @@ static void wooden_rc_track_left_eighth_bank_to_orthogonal( /** rct2: 0x008AC9C8 */ static void wooden_rc_track_right_eighth_bank_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -7971,7 +7971,7 @@ static void wooden_rc_track_right_eighth_bank_to_orthogonal( /** rct2: 0x008AC888 */ static void wooden_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8026,16 +8026,16 @@ static void wooden_rc_track_diag_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24917, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8056,16 +8056,16 @@ static void wooden_rc_track_diag_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24875, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8078,10 +8078,10 @@ static void wooden_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8096,10 +8096,10 @@ static void wooden_rc_track_diag_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24918, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8108,10 +8108,10 @@ static void wooden_rc_track_diag_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8126,10 +8126,10 @@ static void wooden_rc_track_diag_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24876, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8173,7 +8173,7 @@ static void wooden_rc_track_diag_flat( /** rct2: 0x008AC8B8 */ static void wooden_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8228,16 +8228,16 @@ static void wooden_rc_track_diag_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24935, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8258,16 +8258,16 @@ static void wooden_rc_track_diag_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24893, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8280,10 +8280,10 @@ static void wooden_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8298,10 +8298,10 @@ static void wooden_rc_track_diag_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24936, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8310,10 +8310,10 @@ static void wooden_rc_track_diag_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8328,10 +8328,10 @@ static void wooden_rc_track_diag_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24894, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8375,7 +8375,7 @@ static void wooden_rc_track_diag_25_deg_up( /** rct2: 0x008AC8E8 */ static void wooden_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8411,16 +8411,16 @@ static void wooden_rc_track_diag_60_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24911, -16, -16, 32, 32, 0, height, -16, -16, height + 91); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8430,10 +8430,10 @@ static void wooden_rc_track_diag_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8448,10 +8448,10 @@ static void wooden_rc_track_diag_60_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24912, -16, -16, 32, 32, 0, height, -16, -16, height + 91); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8477,7 +8477,7 @@ static void wooden_rc_track_diag_60_deg_up( /** rct2: 0x008AC898 */ static void wooden_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8532,16 +8532,16 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24923, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8562,16 +8562,16 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24881, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8584,10 +8584,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8602,10 +8602,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24924, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8614,10 +8614,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8632,10 +8632,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24882, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8679,7 +8679,7 @@ static void wooden_rc_track_diag_flat_to_25_deg_up( /** rct2: 0x008AC8C8 */ static void wooden_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8715,16 +8715,16 @@ static void wooden_rc_track_diag_25_deg_up_to_60_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24899, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8734,10 +8734,10 @@ static void wooden_rc_track_diag_25_deg_up_to_60_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8752,10 +8752,10 @@ static void wooden_rc_track_diag_25_deg_up_to_60_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24900, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8781,7 +8781,7 @@ static void wooden_rc_track_diag_25_deg_up_to_60_deg_up( /** rct2: 0x008AC8D8 */ static void wooden_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8817,16 +8817,16 @@ static void wooden_rc_track_diag_60_deg_up_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24905, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8836,10 +8836,10 @@ static void wooden_rc_track_diag_60_deg_up_to_25_deg_up( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -8854,10 +8854,10 @@ static void wooden_rc_track_diag_60_deg_up_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24906, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -8883,7 +8883,7 @@ static void wooden_rc_track_diag_60_deg_up_to_25_deg_up( /** rct2: 0x008AC8A8 */ static void wooden_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -8938,16 +8938,16 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24929, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8968,16 +8968,16 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24887, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -8990,10 +8990,10 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9008,10 +9008,10 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24930, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9020,10 +9020,10 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9038,10 +9038,10 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24888, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9085,7 +9085,7 @@ static void wooden_rc_track_diag_25_deg_up_to_flat( /** rct2: 0x008AC918 */ static void wooden_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9140,16 +9140,16 @@ static void wooden_rc_track_diag_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24936, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9170,16 +9170,16 @@ static void wooden_rc_track_diag_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24894, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9192,10 +9192,10 @@ static void wooden_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9210,10 +9210,10 @@ static void wooden_rc_track_diag_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24935, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9222,10 +9222,10 @@ static void wooden_rc_track_diag_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9240,10 +9240,10 @@ static void wooden_rc_track_diag_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24893, -16, -16, 32, 32, 0, height, -16, -16, height + 43); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9287,7 +9287,7 @@ static void wooden_rc_track_diag_25_deg_down( /** rct2: 0x008AC948 */ static void wooden_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9323,16 +9323,16 @@ static void wooden_rc_track_diag_60_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24912, -16, -16, 32, 32, 0, height, -16, -16, height + 91); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9342,10 +9342,10 @@ static void wooden_rc_track_diag_60_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9360,10 +9360,10 @@ static void wooden_rc_track_diag_60_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24911, -16, -16, 32, 32, 0, height, -16, -16, height + 91); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9389,7 +9389,7 @@ static void wooden_rc_track_diag_60_deg_down( /** rct2: 0x008AC8F8 */ static void wooden_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9442,16 +9442,16 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24930, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9472,16 +9472,16 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24888, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9492,10 +9492,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9510,10 +9510,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24929, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9522,10 +9522,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9540,10 +9540,10 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24887, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9586,7 +9586,7 @@ static void wooden_rc_track_diag_flat_to_25_deg_down( /** rct2: 0x008AC928 */ static void wooden_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9622,16 +9622,16 @@ static void wooden_rc_track_diag_25_deg_down_to_60_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24906, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9641,10 +9641,10 @@ static void wooden_rc_track_diag_25_deg_down_to_60_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9659,10 +9659,10 @@ static void wooden_rc_track_diag_25_deg_down_to_60_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24905, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9688,7 +9688,7 @@ static void wooden_rc_track_diag_25_deg_down_to_60_deg_down( /** rct2: 0x008AC938 */ static void wooden_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9724,16 +9724,16 @@ static void wooden_rc_track_diag_60_deg_down_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24900, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9743,10 +9743,10 @@ static void wooden_rc_track_diag_60_deg_down_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9761,10 +9761,10 @@ static void wooden_rc_track_diag_60_deg_down_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24899, -16, -16, 32, 32, 0, height, -16, -16, height + 59); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -9790,7 +9790,7 @@ static void wooden_rc_track_diag_60_deg_down_to_25_deg_down( /** rct2: 0x008AC908 */ static void wooden_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -9845,16 +9845,16 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24924, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9875,16 +9875,16 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24882, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9897,10 +9897,10 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9915,10 +9915,10 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24923, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9927,10 +9927,10 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -9945,10 +9945,10 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24881, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -9992,7 +9992,7 @@ static void wooden_rc_track_diag_25_deg_down_to_flat( /** rct2: 0x008ACA18 */ static void wooden_rc_track_diag_flat_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10028,16 +10028,16 @@ static void wooden_rc_track_diag_flat_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24947, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10047,10 +10047,10 @@ static void wooden_rc_track_diag_flat_to_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10065,10 +10065,10 @@ static void wooden_rc_track_diag_flat_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24948, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10094,7 +10094,7 @@ static void wooden_rc_track_diag_flat_to_left_bank( /** rct2: 0x008AC9F8 */ static void wooden_rc_track_diag_flat_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10130,16 +10130,16 @@ static void wooden_rc_track_diag_flat_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24953, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10149,10 +10149,10 @@ static void wooden_rc_track_diag_flat_to_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10167,10 +10167,10 @@ static void wooden_rc_track_diag_flat_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24954, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10196,7 +10196,7 @@ static void wooden_rc_track_diag_flat_to_right_bank( /** rct2: 0x008ACA08 */ static void wooden_rc_track_diag_left_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10232,16 +10232,16 @@ static void wooden_rc_track_diag_left_bank_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24954, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10251,10 +10251,10 @@ static void wooden_rc_track_diag_left_bank_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10269,10 +10269,10 @@ static void wooden_rc_track_diag_left_bank_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24953, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10298,7 +10298,7 @@ static void wooden_rc_track_diag_left_bank_to_flat( /** rct2: 0x008ACA28 */ static void wooden_rc_track_diag_right_bank_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10334,16 +10334,16 @@ static void wooden_rc_track_diag_right_bank_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24948, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10353,10 +10353,10 @@ static void wooden_rc_track_diag_right_bank_to_flat( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10371,10 +10371,10 @@ static void wooden_rc_track_diag_right_bank_to_flat( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24947, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10400,7 +10400,7 @@ static void wooden_rc_track_diag_right_bank_to_flat( /** rct2: 0x008ACA58 */ static void wooden_rc_track_diag_left_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10436,16 +10436,16 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24971, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10455,10 +10455,10 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10473,10 +10473,10 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24972, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10502,7 +10502,7 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_up( /** rct2: 0x008ACA68 */ static void wooden_rc_track_diag_right_bank_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10538,16 +10538,16 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24977, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10557,10 +10557,10 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_up( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10575,10 +10575,10 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24978, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10604,7 +10604,7 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_up( /** rct2: 0x008ACA38 */ static void wooden_rc_track_diag_25_deg_up_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10640,16 +10640,16 @@ static void wooden_rc_track_diag_25_deg_up_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24959, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10659,10 +10659,10 @@ static void wooden_rc_track_diag_25_deg_up_to_left_bank( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10677,10 +10677,10 @@ static void wooden_rc_track_diag_25_deg_up_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24960, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10706,7 +10706,7 @@ static void wooden_rc_track_diag_25_deg_up_to_left_bank( /** rct2: 0x008ACA48 */ static void wooden_rc_track_diag_25_deg_up_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10742,16 +10742,16 @@ static void wooden_rc_track_diag_25_deg_up_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24965, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10761,10 +10761,10 @@ static void wooden_rc_track_diag_25_deg_up_to_right_bank( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10779,10 +10779,10 @@ static void wooden_rc_track_diag_25_deg_up_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24966, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -10808,7 +10808,7 @@ static void wooden_rc_track_diag_25_deg_up_to_right_bank( /** rct2: 0x008ACA78 */ static void wooden_rc_track_diag_left_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10842,16 +10842,16 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24966, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -10859,10 +10859,10 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10877,10 +10877,10 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24965, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -10905,7 +10905,7 @@ static void wooden_rc_track_diag_left_bank_to_25_deg_down( /** rct2: 0x008ACA88 */ static void wooden_rc_track_diag_right_bank_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -10939,16 +10939,16 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24960, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -10956,10 +10956,10 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_down( switch (direction) { case 0: - wooden_b_supports_paint_setup(session, 4, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_b_supports_paint_setup(session, 5, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 5, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -10974,10 +10974,10 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_down( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24959, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_b_supports_paint_setup(session, 2, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 2, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_b_supports_paint_setup(session, 3, 0, height + 16, session->TrackColours[SCHEME_SUPPORTS]); + wooden_b_supports_paint_setup(session, 3, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -11002,7 +11002,7 @@ static void wooden_rc_track_diag_right_bank_to_25_deg_down( /** rct2: 0x008ACA98 */ static void wooden_rc_track_diag_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11038,16 +11038,16 @@ static void wooden_rc_track_diag_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24978, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11057,10 +11057,10 @@ static void wooden_rc_track_diag_25_deg_down_to_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11075,10 +11075,10 @@ static void wooden_rc_track_diag_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24977, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11104,7 +11104,7 @@ static void wooden_rc_track_diag_25_deg_down_to_left_bank( /** rct2: 0x008ACAA8 */ static void wooden_rc_track_diag_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11140,16 +11140,16 @@ static void wooden_rc_track_diag_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24972, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11159,10 +11159,10 @@ static void wooden_rc_track_diag_25_deg_down_to_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11177,10 +11177,10 @@ static void wooden_rc_track_diag_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24971, -16, -16, 32, 32, 0, height, -16, -16, height + 35); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11206,7 +11206,7 @@ static void wooden_rc_track_diag_25_deg_down_to_right_bank( /** rct2: 0x008AC9D8 */ static void wooden_rc_track_diag_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11242,16 +11242,16 @@ static void wooden_rc_track_diag_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24941, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11261,10 +11261,10 @@ static void wooden_rc_track_diag_left_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11279,10 +11279,10 @@ static void wooden_rc_track_diag_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24942, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11308,7 +11308,7 @@ static void wooden_rc_track_diag_left_bank( /** rct2: 0x008AC9E8 */ static void wooden_rc_track_diag_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11344,16 +11344,16 @@ static void wooden_rc_track_diag_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24942, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11363,10 +11363,10 @@ static void wooden_rc_track_diag_right_bank( switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11381,10 +11381,10 @@ static void wooden_rc_track_diag_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24941, -16, -16, 32, 32, 0, height, -16, -16, height + 27); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -11410,7 +11410,7 @@ static void wooden_rc_track_diag_right_bank( /** rct2: 0x008ACB38 */ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11423,7 +11423,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23958, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24824, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11436,14 +11436,14 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24837, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23962, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24828, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11456,7 +11456,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24835, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11482,7 +11482,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23957, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24823, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11495,7 +11495,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24836, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11508,7 +11508,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24838, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11521,7 +11521,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24834, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -11541,7 +11541,7 @@ static void wooden_rc_track_left_bank_to_left_quarter_turn_3_25_deg_up( /** rct2: 0x008ACB48 */ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11560,14 +11560,14 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24829, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23949, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24815, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11580,14 +11580,14 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24832, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23953, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24819, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11619,7 +11619,7 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24830, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11632,7 +11632,7 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24831, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11645,14 +11645,14 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24833, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23954, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24820, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -11672,7 +11672,7 @@ static void wooden_rc_track_right_bank_to_right_quarter_turn_3_25_deg_up( /** rct2: 0x008ACB58 */ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11691,7 +11691,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24831, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11704,14 +11704,14 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24833, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23954, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24820, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11724,7 +11724,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24830, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11750,7 +11750,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( session, direction, wooden_rc_get_track_colour(session) | 23949, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24815, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11763,14 +11763,14 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24832, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23953, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24819, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11783,7 +11783,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24829, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -11803,7 +11803,7 @@ static void wooden_rc_track_left_quarter_turn_3_25_deg_down_to_left_bank( /** rct2: 0x008ACB68 */ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11822,14 +11822,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24834, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23957, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24823, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11842,7 +11842,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24836, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11855,7 +11855,7 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24838, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -11887,14 +11887,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24835, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23958, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24824, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -11907,14 +11907,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24837, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23962, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24828, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -11934,14 +11934,14 @@ static void wooden_rc_track_right_quarter_turn_3_25_deg_down_to_right_bank( /** rct2: 0x008ACDF8 */ static void wooden_rc_track_block_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const auto brakeImg = trackElement.BlockBrakeClosed() ? _wooden_rc_block_brakes_image_ids[direction][1] : _wooden_rc_block_brakes_image_ids[direction][0]; wooden_rc_track_paint( session, brakeImg, _wooden_rc_block_brakes_image_ids[direction][2], direction, 0, 2, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -11949,7 +11949,7 @@ static void wooden_rc_track_block_brakes( /** rct2: 0x008ACCB8 */ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -11962,7 +11962,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23932, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24798, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -11975,14 +11975,14 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24811, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23936, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24802, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -11995,7 +11995,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24809, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12021,7 +12021,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 23931, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24797, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12034,7 +12034,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24810, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12047,7 +12047,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24812, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12060,7 +12060,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24808, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -12080,7 +12080,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008ACCC8 */ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12099,14 +12099,14 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24803, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23923, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24789, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12119,14 +12119,14 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24806, 0, 6, 32, 20, 0, height, 0, 6, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23927, 0, 6, 32, 20, 2, height, 0, 6, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24793, 0, 6, 32, 20, 2, height, 0, 6, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12158,7 +12158,7 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24804, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12171,7 +12171,7 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24805, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12184,14 +12184,14 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24807, 6, 0, 20, 32, 0, height, 6, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 23928, 6, 0, 20, 32, 2, height, 6, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 24794, 6, 0, 20, 32, 2, height, 6, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -12211,7 +12211,7 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_up( /** rct2: 0x008ACCD8 */ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -12221,7 +12221,7 @@ static void wooden_rc_track_left_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008ACCE8 */ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -12231,7 +12231,7 @@ static void wooden_rc_track_right_banked_quarter_turn_3_25_deg_down( /** rct2: 0x008ACC38 */ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12244,7 +12244,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24321, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25187, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12257,21 +12257,21 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25218, 0, 0, 32, 27, 0, height, 0, 2, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24331, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25197, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24336, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25202, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12294,7 +12294,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24322, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25188, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12307,7 +12307,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25219, 0, 0, 32, 16, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12316,7 +12316,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25198, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12331,7 +12331,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25225, 0, 0, 32, 16, 0, height, 0, 16, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12351,7 +12351,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25189, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12366,7 +12366,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25220, 0, 0, 16, 16, 0, height, 16, 16, height + 59); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12375,7 +12375,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25199, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12388,7 +12388,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25226, 0, 0, 16, 16, 0, height, 0, 0, height + 59); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12414,7 +12414,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25190, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12427,7 +12427,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25221, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12440,7 +12440,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25223, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12455,7 +12455,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25227, 0, 0, 16, 32, 0, height, 16, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12473,7 +12473,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24325, 0, 0, 27, 32, 2, height, 2, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25191, 0, 0, 27, 32, 2, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12486,7 +12486,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25222, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12499,7 +12499,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25224, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12512,7 +12512,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25228, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -12532,7 +12532,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008ACC48 */ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -12545,14 +12545,14 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24301, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25167, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24306, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25172, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12565,14 +12565,14 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25213, 0, 0, 32, 27, 0, height, 0, 2, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24316, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25182, 0, 0, 32, 27, 2, height, 0, 2, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12603,7 +12603,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25207, 0, 0, 32, 16, 0, height, 0, 16, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12612,7 +12612,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25173, 0, 0, 32, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12625,14 +12625,14 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25214, 0, 0, 32, 16, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24317, 0, 0, 32, 16, 2, height, 0, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25183, 0, 0, 32, 16, 2, height, 0, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12656,7 +12656,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25208, 0, 0, 16, 16, 0, height, 0, 0, height + 59); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12665,7 +12665,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25174, 0, 0, 16, 16, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12680,7 +12680,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25215, 0, 0, 16, 16, 0, height, 16, 16, height + 59); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12689,7 +12689,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25184, 0, 0, 16, 16, 2, height, 0, 16, height); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12721,7 +12721,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25209, 0, 0, 16, 32, 0, height, 16, 0, height + 67); - wooden_a_supports_paint_setup(session, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12734,7 +12734,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25211, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12747,7 +12747,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25216, 0, 0, 16, 32, 0, height, 0, 0, height + 67); - wooden_a_supports_paint_setup(session, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( @@ -12756,7 +12756,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25185, 0, 0, 16, 32, 2, height, 16, 0, height); - wooden_a_supports_paint_setup(session, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } paint_util_set_segment_support_height( @@ -12780,7 +12780,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25210, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -12793,7 +12793,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25212, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -12806,14 +12806,14 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25217, 0, 0, 27, 32, 0, height, 2, 0, height + 67); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24320, 0, 0, 27, 32, 2, height, 2, 0, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25186, 0, 0, 27, 32, 2, height, 2, 0, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; } switch (direction) @@ -12833,7 +12833,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_up( /** rct2: 0x008ACC58 */ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -12843,7 +12843,7 @@ static void wooden_rc_track_left_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008ACC68 */ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -12853,7 +12853,7 @@ static void wooden_rc_track_right_banked_quarter_turn_5_25_deg_down( /** rct2: 0x008ACCF8 */ static void wooden_rc_track_25_deg_up_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -12863,28 +12863,28 @@ static void wooden_rc_track_25_deg_up_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24261, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25127, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24262, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25128, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24263, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25129, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24264, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25130, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12901,7 +12901,7 @@ static void wooden_rc_track_25_deg_up_to_left_banked_25_deg_up( /** rct2: 0x008ACD08 */ static void wooden_rc_track_25_deg_up_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -12911,28 +12911,28 @@ static void wooden_rc_track_25_deg_up_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24265, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25131, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24266, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25132, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24267, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25133, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24268, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25134, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12949,7 +12949,7 @@ static void wooden_rc_track_25_deg_up_to_right_banked_25_deg_up( /** rct2: 0x008ACD18 */ static void wooden_rc_track_left_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -12959,28 +12959,28 @@ static void wooden_rc_track_left_banked_25_deg_up_to_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24269, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25135, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24270, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25136, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24271, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25137, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24272, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25138, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -12997,7 +12997,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008ACD28 */ static void wooden_rc_track_right_banked_25_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13007,28 +13007,28 @@ static void wooden_rc_track_right_banked_25_deg_up_to_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24273, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25139, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24274, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25140, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24275, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25141, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24276, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25142, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13045,7 +13045,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_25_deg_up( /** rct2: 0x008ACD38 */ static void wooden_rc_track_25_deg_down_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_banked_25_deg_up_to_25_deg_up( @@ -13054,7 +13054,7 @@ static void wooden_rc_track_25_deg_down_to_left_banked_25_deg_down( /** rct2: 0x008ACD48 */ static void wooden_rc_track_25_deg_down_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_banked_25_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -13062,7 +13062,7 @@ static void wooden_rc_track_25_deg_down_to_right_banked_25_deg_down( /** rct2: 0x008ACD58 */ static void wooden_rc_track_left_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_right_banked_25_deg_up( @@ -13071,7 +13071,7 @@ static void wooden_rc_track_left_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008ACD68 */ static void wooden_rc_track_right_banked_25_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_25_deg_up_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -13079,7 +13079,7 @@ static void wooden_rc_track_right_banked_25_deg_down_to_25_deg_down( /** rct2: 0x008ACD78 */ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13089,7 +13089,7 @@ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24277, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25143, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13100,7 +13100,7 @@ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24293, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25159, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13111,14 +13111,14 @@ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24294, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25160, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24280, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25146, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13135,7 +13135,7 @@ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( /** rct2: 0x008ACD88 */ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13145,7 +13145,7 @@ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24281, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25147, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13156,7 +13156,7 @@ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24295, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25161, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13167,14 +13167,14 @@ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24296, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25162, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24284, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25150, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13191,7 +13191,7 @@ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( /** rct2: 0x008ACD98 */ static void wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13201,7 +13201,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24285, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25151, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13212,7 +13212,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24297, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25163, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13223,14 +13223,14 @@ static void wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24298, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25164, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24288, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25154, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13247,7 +13247,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( /** rct2: 0x008ACDA8 */ static void wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13257,7 +13257,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24289, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25155, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13268,7 +13268,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24299, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25165, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13279,14 +13279,14 @@ static void wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( session, direction, wooden_rc_get_track_colour(session) | 24300, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25166, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24292, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25158, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13303,7 +13303,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( /** rct2: 0x008ACDB8 */ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_banked_25_deg_up_to_right_banked_flat( @@ -13312,7 +13312,7 @@ static void wooden_rc_track_left_banked_flat_to_left_banked_25_deg_down( /** rct2: 0x008ACDC8 */ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_banked_25_deg_up_to_left_banked_flat( @@ -13321,7 +13321,7 @@ static void wooden_rc_track_right_banked_flat_to_right_banked_25_deg_down( /** rct2: 0x008ACDD8 */ static void wooden_rc_track_left_banked_25_deg_down_to_left_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_banked_flat_to_right_banked_25_deg_up( @@ -13330,7 +13330,7 @@ static void wooden_rc_track_left_banked_25_deg_down_to_left_banked_flat( /** rct2: 0x008ACDE8 */ static void wooden_rc_track_right_banked_25_deg_down_to_right_banked_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_banked_flat_to_left_banked_25_deg_up( @@ -13339,7 +13339,7 @@ static void wooden_rc_track_right_banked_25_deg_down_to_right_banked_flat( /** rct2: 0x008ACBB8 */ static void wooden_rc_track_flat_to_left_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13349,7 +13349,7 @@ static void wooden_rc_track_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24225, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25091, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13360,7 +13360,7 @@ static void wooden_rc_track_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24241, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25107, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13371,14 +13371,14 @@ static void wooden_rc_track_flat_to_left_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24242, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25108, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24228, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25094, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13395,7 +13395,7 @@ static void wooden_rc_track_flat_to_left_banked_25_deg_up( /** rct2: 0x008ACBC8 */ static void wooden_rc_track_flat_to_right_banked_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13405,7 +13405,7 @@ static void wooden_rc_track_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24229, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25095, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13416,7 +13416,7 @@ static void wooden_rc_track_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24243, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25109, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13427,14 +13427,14 @@ static void wooden_rc_track_flat_to_right_banked_25_deg_up( session, direction, wooden_rc_get_track_colour(session) | 24244, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25110, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24232, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25098, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13451,7 +13451,7 @@ static void wooden_rc_track_flat_to_right_banked_25_deg_up( /** rct2: 0x008ACBD8 */ static void wooden_rc_track_left_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13461,7 +13461,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24233, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25099, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13472,7 +13472,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24245, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25111, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13483,14 +13483,14 @@ static void wooden_rc_track_left_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24246, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25112, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24236, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25102, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13507,7 +13507,7 @@ static void wooden_rc_track_left_banked_25_deg_up_to_flat( /** rct2: 0x008ACBE8 */ static void wooden_rc_track_right_banked_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -13517,7 +13517,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24237, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25103, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: PaintAddImageAsParentRotated( @@ -13528,7 +13528,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24247, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25113, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: PaintAddImageAsParentRotated( @@ -13539,14 +13539,14 @@ static void wooden_rc_track_right_banked_25_deg_up_to_flat( session, direction, wooden_rc_get_track_colour(session) | 24248, 0, 0, 32, 1, 9, height, 0, 26, height + 5); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25114, 0, 0, 32, 1, 9, height, 0, 26, height + 5); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: PaintAddImageAsParentRotated( session, direction, wooden_rc_get_track_colour(session) | 24240, 0, 0, 32, 25, 2, height, 0, 3, height); PaintAddImageAsChildRotated( session, direction, wooden_rc_get_rails_colour(session) | 25106, 0, 0, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); break; } if (direction == 0 || direction == 3) @@ -13563,7 +13563,7 @@ static void wooden_rc_track_right_banked_25_deg_up_to_flat( /** rct2: 0x008ACBF8 */ static void wooden_rc_track_flat_to_left_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_right_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -13571,7 +13571,7 @@ static void wooden_rc_track_flat_to_left_banked_25_deg_down( /** rct2: 0x008ACC08 */ static void wooden_rc_track_flat_to_right_banked_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_left_banked_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -13579,7 +13579,7 @@ static void wooden_rc_track_flat_to_right_banked_25_deg_down( /** rct2: 0x008ACC18 */ static void wooden_rc_track_left_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_flat_to_right_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -13587,14 +13587,14 @@ static void wooden_rc_track_left_banked_25_deg_down_to_flat( /** rct2: 0x008ACC28 */ static void wooden_rc_track_right_banked_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_rc_track_flat_to_left_banked_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void wooden_rc_track_booster( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -13612,7 +13612,7 @@ static void wooden_rc_track_booster( wooden_rc_track_paint( session, imageIds[direction], railsImageIds[direction], direction, 0, 2, 32, 25, 2, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); diff --git a/src/openrct2/ride/coaster/WoodenWildMouse.cpp b/src/openrct2/ride/coaster/WoodenWildMouse.cpp index 7359810ce1..ac7a88ff4a 100644 --- a/src/openrct2/ride/coaster/WoodenWildMouse.cpp +++ b/src/openrct2/ride/coaster/WoodenWildMouse.cpp @@ -122,7 +122,7 @@ enum /** rct2: 0x008A5464 */ static void wooden_wild_mouse_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -132,9 +132,9 @@ static void wooden_wild_mouse_track_flat( SPR_WOODEN_WILD_MOUSE_FLAT_NW_SE, }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 1, height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( session, @@ -146,7 +146,7 @@ static void wooden_wild_mouse_track_flat( } static void wooden_wild_mouse_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -157,12 +157,11 @@ static void wooden_wild_mouse_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height - 2, 0, 2, height); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 0, - height); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 6, 32, 20, 1, height, 0, 0, height); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station(session, ride, direction, height, trackElement); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -171,7 +170,7 @@ static void wooden_wild_mouse_track_station( /** rct2: 0x008A5474 */ static void wooden_wild_mouse_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4] = { @@ -190,10 +189,10 @@ static void wooden_wild_mouse_track_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -210,7 +209,7 @@ static void wooden_wild_mouse_track_25_deg_up( /** rct2: 0x008A5484 */ static void wooden_wild_mouse_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4] = { @@ -229,18 +228,18 @@ static void wooden_wild_mouse_track_60_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 3) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); } else { - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 6, 2, 24, 93, height, 28, 4, height - 16); } - wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 21 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -257,7 +256,7 @@ static void wooden_wild_mouse_track_60_deg_up( /** rct2: 0x008A5494 */ static void wooden_wild_mouse_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4] = { @@ -276,10 +275,10 @@ static void wooden_wild_mouse_track_flat_to_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -296,7 +295,7 @@ static void wooden_wild_mouse_track_flat_to_25_deg_up( /** rct2: 0x008A54A4 */ static void wooden_wild_mouse_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -318,19 +317,19 @@ static void wooden_wild_mouse_track_25_deg_up_to_60_deg_up( uint32_t imageId; if (direction == 0 || direction == 3) { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); } else { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 6, 2, 24, 43, height, 28, 4, height + 2); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 13 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -346,7 +345,7 @@ static void wooden_wild_mouse_track_25_deg_up_to_60_deg_up( } static void wooden_wild_mouse_track_60_deg_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -368,19 +367,19 @@ static void wooden_wild_mouse_track_60_deg_to_25_deg_up( uint32_t imageId; if (direction == 0 || direction == 3) { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); } else { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 6, 2, 24, 43, height, 28, 4, height + 2); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 17 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -397,7 +396,7 @@ static void wooden_wild_mouse_track_60_deg_to_25_deg_up( /** rct2: 0x008A54C4 */ static void wooden_wild_mouse_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4] = { @@ -416,10 +415,10 @@ static void wooden_wild_mouse_track_25_deg_up_to_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); - wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -436,7 +435,7 @@ static void wooden_wild_mouse_track_25_deg_up_to_flat( /** rct2: 0x008A54D4 */ static void wooden_wild_mouse_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -444,7 +443,7 @@ static void wooden_wild_mouse_track_25_deg_down( /** rct2: 0x008A54E4 */ static void wooden_wild_mouse_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -452,7 +451,7 @@ static void wooden_wild_mouse_track_60_deg_down( /** rct2: 0x008A54F4 */ static void wooden_wild_mouse_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -460,7 +459,7 @@ static void wooden_wild_mouse_track_flat_to_25_deg_down( /** rct2: 0x008A5504 */ static void wooden_wild_mouse_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_60_deg_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -468,7 +467,7 @@ static void wooden_wild_mouse_track_25_deg_down_to_60_deg_down( /** rct2: 0x008A5514 */ static void wooden_wild_mouse_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -476,14 +475,14 @@ static void wooden_wild_mouse_track_60_deg_down_to_25_deg_down( /** rct2: 0x008A5524 */ static void wooden_wild_mouse_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void wooden_wild_mouse_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][3] = { @@ -511,14 +510,14 @@ static void wooden_wild_mouse_track_right_quarter_turn_3( static uint8_t supportType[] = { 4, 5, 2, 3 }; track_paint_util_right_quarter_turn_3_tiles_paint_4( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); switch (trackSequence) { case 0: case 3: - wooden_a_supports_paint_setup(session, supportType[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportType[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -540,7 +539,7 @@ static void wooden_wild_mouse_track_right_quarter_turn_3( } static void wooden_wild_mouse_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -548,7 +547,7 @@ static void wooden_wild_mouse_track_left_quarter_turn_3( } static void wooden_wild_mouse_track_left_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4] = { @@ -559,7 +558,7 @@ static void wooden_wild_mouse_track_left_quarter_turn_1( }; static uint8_t supportType[] = { 5, 2, 3, 4 }; - uint32_t imageId = imageIds[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction] | session.TrackColours[SCHEME_TRACK]; switch (direction) { case 0: @@ -575,7 +574,7 @@ static void wooden_wild_mouse_track_left_quarter_turn_1( PaintAddImageAsParent(session, imageId, { 6, 6, height }, { 24, 24, 1 }); break; } - wooden_a_supports_paint_setup(session, supportType[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportType[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); 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, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -583,7 +582,7 @@ static void wooden_wild_mouse_track_left_quarter_turn_1( /** rct2: 0x008A55D4 */ static void wooden_wild_mouse_track_right_quarter_turn_1( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_left_quarter_turn_1(session, ride, trackSequence, (direction - 1) & 3, height, trackElement); @@ -591,7 +590,7 @@ static void wooden_wild_mouse_track_right_quarter_turn_1( /** rct2: 0x008A55E4 */ static void wooden_wild_mouse_track_flat_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -613,18 +612,18 @@ static void wooden_wild_mouse_track_flat_to_60_deg_up( uint32_t imageId; if (direction == 0 || direction == 3) { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); } else { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 2, 24, 43, height, 28, 4, height + 2); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 29 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 29 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -641,7 +640,7 @@ static void wooden_wild_mouse_track_flat_to_60_deg_up( /** rct2: 0x008A55F4 */ static void wooden_wild_mouse_track_60_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -663,18 +662,18 @@ static void wooden_wild_mouse_track_60_deg_up_to_flat( uint32_t imageId; if (direction == 0 || direction == 3) { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 1, height, 0, 3, height); } else { - imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 2, 24, 43, height, 28, 4, height + 2); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 2, 43, height, 0, 4, height); } - wooden_a_supports_paint_setup(session, direction & 1, 33 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 33 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -691,7 +690,7 @@ static void wooden_wild_mouse_track_60_deg_up_to_flat( /** rct2: 0x008A5604 */ static void wooden_wild_mouse_track_flat_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_60_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -699,7 +698,7 @@ static void wooden_wild_mouse_track_flat_to_60_deg_down( /** rct2: 0x008A5614 */ static void wooden_wild_mouse_track_60_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { wooden_wild_mouse_track_flat_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); diff --git a/src/openrct2/ride/gentle/CarRide.cpp b/src/openrct2/ride/gentle/CarRide.cpp index 67fda77eb6..e1b01e5d84 100644 --- a/src/openrct2/ride/gentle/CarRide.cpp +++ b/src/openrct2/ride/gentle/CarRide.cpp @@ -157,10 +157,10 @@ static constexpr const uint32_t car_ride_track_pieces_quarter_turn_3_tiles[4][3] /** rct2: 0x006F72C8 */ static void paint_car_ride_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -180,7 +180,7 @@ static void paint_car_ride_track_flat( paint_util_push_tunnel_right(session, height, TUNNEL_0); } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -188,10 +188,10 @@ static void paint_car_ride_track_flat( /** rct2: 0x006F72D8 */ static void paint_car_ride_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -218,7 +218,7 @@ static void paint_car_ride_track_25_deg_up( break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 56, 0x20); @@ -226,10 +226,10 @@ static void paint_car_ride_track_25_deg_up( /** rct2: 0x006F72E8 */ static void paint_car_ride_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_flat_to_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_flat_to_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -256,7 +256,7 @@ static void paint_car_ride_track_flat_to_25_deg_up( break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); @@ -264,10 +264,10 @@ static void paint_car_ride_track_flat_to_25_deg_up( /** rct2: 0x006F72F8 */ static void paint_car_ride_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_25_deg_up_to_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_25_deg_up_to_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -294,7 +294,7 @@ static void paint_car_ride_track_25_deg_up_to_flat( break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 40, 0x20); @@ -302,7 +302,7 @@ static void paint_car_ride_track_25_deg_up_to_flat( /** rct2: 0x006F7308 */ static void paint_car_ride_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -310,7 +310,7 @@ static void paint_car_ride_track_25_deg_down( /** rct2: 0x006F7318 */ static void paint_car_ride_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -318,7 +318,7 @@ static void paint_car_ride_track_flat_to_25_deg_down( /** rct2: 0x006F7328 */ static void paint_car_ride_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -326,23 +326,23 @@ static void paint_car_ride_track_25_deg_down_to_flat( /** rct2: 0x006F7338, 0x006F7348, 0x006F7358 */ static void paint_car_ride_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction == 0 || direction == 2) { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height }); } else if (direction == 1 || direction == 3) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height }); } - imageId = car_ride_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = car_ride_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsChild(session, imageId, { 0, 6, height }, { 32, 20, 1 }, { 0, 0, height }); @@ -363,13 +363,13 @@ static void paint_car_ride_station( if (direction == 0 || direction == 2) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } track_paint_util_draw_station(session, ride, direction, height, trackElement); @@ -380,11 +380,11 @@ static void paint_car_ride_station( /** rct2: 0x006F7378 */ static void paint_car_ride_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], car_ride_track_pieces_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, nullptr); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); @@ -393,7 +393,7 @@ static void paint_car_ride_track_right_quarter_turn_3_tiles( { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -417,7 +417,7 @@ static void paint_car_ride_track_right_quarter_turn_3_tiles( /** rct2: 0x006F7368 */ static void paint_car_ride_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -426,10 +426,10 @@ static void paint_car_ride_track_left_quarter_turn_3_tiles( /** rct2: 0x006F7388 */ static void paint_car_ride_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_left_quarter_turn_1_tile[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_left_quarter_turn_1_tile[direction] | session.TrackColours[SCHEME_TRACK]; switch (direction) { @@ -447,7 +447,7 @@ static void paint_car_ride_track_left_quarter_turn_1_tile( break; } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height, 0, TUNNEL_0, 0, TUNNEL_0); @@ -457,7 +457,7 @@ static void paint_car_ride_track_left_quarter_turn_1_tile( /** rct2: 0x006F7398 */ static void paint_car_ride_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); @@ -465,10 +465,10 @@ static void paint_car_ride_track_right_quarter_turn_1_tile( /** rct2: 0x006F73A8 */ static void paint_car_ride_track_spinning_tunnel( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -490,7 +490,7 @@ static void paint_car_ride_track_spinning_tunnel( paint_util_push_tunnel_right(session, height, TUNNEL_0); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -498,10 +498,10 @@ static void paint_car_ride_track_spinning_tunnel( /** rct2: 0x006F73B8 */ static void paint_car_ride_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_60_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_60_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; switch (direction) { @@ -535,9 +535,9 @@ static void paint_car_ride_track_60_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -547,10 +547,10 @@ static void paint_car_ride_track_60_deg_up( /** rct2: 0x006F73C8 */ static void paint_car_ride_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -563,7 +563,7 @@ static void paint_car_ride_track_25_deg_up_to_60_deg_up( if (car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][1] != 0) { - imageId = car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = car_ride_track_pieces_25_deg_up_to_60_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -591,9 +591,9 @@ static void paint_car_ride_track_25_deg_up_to_60_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -603,10 +603,10 @@ static void paint_car_ride_track_25_deg_up_to_60_deg_up( /** rct2: 0x006F73D8 */ static void paint_car_ride_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -619,7 +619,7 @@ static void paint_car_ride_track_60_deg_up_to_25_deg_up( if (car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][1] != 0) { - imageId = car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = car_ride_track_pieces_60_deg_up_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -647,9 +647,9 @@ static void paint_car_ride_track_60_deg_up_to_25_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -659,7 +659,7 @@ static void paint_car_ride_track_60_deg_up_to_25_deg_up( /** rct2: 0x006F73E8 */ static void paint_car_ride_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -667,7 +667,7 @@ static void paint_car_ride_track_60_deg_down( /** rct2: 0x006F73F8 */ static void paint_car_ride_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -675,7 +675,7 @@ static void paint_car_ride_track_25_deg_down_to_60_deg_down( /** rct2: 0x006F7408 */ static void paint_car_ride_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_car_ride_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -683,10 +683,10 @@ static void paint_car_ride_track_60_deg_down_to_25_deg_down( /** rct2: 0x006F7418 */ static void paint_car_ride_track_log_bumps( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = car_ride_track_pieces_log_bumps[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = car_ride_track_pieces_log_bumps[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -706,7 +706,7 @@ static void paint_car_ride_track_log_bumps( paint_util_push_tunnel_right(session, height, TUNNEL_0); } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); diff --git a/src/openrct2/ride/gentle/Circus.cpp b/src/openrct2/ride/gentle/Circus.cpp index a9dd3c194c..57b5c48add 100644 --- a/src/openrct2/ride/gentle/Circus.cpp +++ b/src/openrct2/ride/gentle/Circus.cpp @@ -16,9 +16,9 @@ #include "../Track.h" #include "../TrackPaint.h" -static void PaintCircusTent(paint_session* session, const Ride& ride, uint8_t direction, int8_t al, int8_t cl, uint16_t height) +static void PaintCircusTent(paint_session& session, const Ride& ride, uint8_t direction, int8_t al, int8_t cl, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) @@ -27,12 +27,12 @@ static void PaintCircusTent(paint_session* session, const Ride& ride, uint8_t di auto vehicle = GetEntity(ride.vehicles[0]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -42,27 +42,27 @@ static void PaintCircusTent(paint_session* session, const Ride& ride, uint8_t di PaintAddImageAsParent( session, imageTemplate.WithIndex(imageIndex), { al, cl, height + 3 }, { 24, 24, 47 }, { al + 16, cl + 16, height + 3 }); - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintCircus( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_SUPPORTS], height, - fenceSpritesRope, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_SUPPORTS], height, + fenceSpritesRope, session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/gentle/CrookedHouse.cpp b/src/openrct2/ride/gentle/CrookedHouse.cpp index 2fbaed6bfe..43fbe1fc18 100644 --- a/src/openrct2/ride/gentle/CrookedHouse.cpp +++ b/src/openrct2/ride/gentle/CrookedHouse.cpp @@ -50,9 +50,9 @@ static constexpr const rct_crooked_house_bound_box crooked_house_data[] = { * rct2: 0x0088ABA4 */ static void PaintCrookedHouseStructure( - paint_session* session, uint8_t direction, int32_t x_offset, int32_t y_offset, uint32_t segment, int32_t height) + paint_session& session, uint8_t direction, int32_t x_offset, int32_t y_offset, uint32_t segment, int32_t height) { - const TileElement* original_tile_element = static_cast(session->CurrentlyDrawnItem); + const TileElement* original_tile_element = static_cast(session.CurrentlyDrawnItem); auto ride = get_ride(original_tile_element->AsTrack()->GetRideIndex()); if (ride == nullptr) @@ -67,13 +67,13 @@ static void PaintCrookedHouseStructure( auto vehicle = GetEntity(ride->vehicles[0]); if (vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } } const auto& boundBox = crooked_house_data[segment]; - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_MISC]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_MISC]); auto imageIndex = rideEntry->vehicles[0].base_image_id + direction; PaintAddImageAsParent( session, imageTemplate.WithIndex(imageIndex), { x_offset, y_offset, height + 3 }, { boundBox.length, 127 }, @@ -81,22 +81,22 @@ static void PaintCrookedHouseStructure( } static void PaintCrookedHouse( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/gentle/Dodgems.cpp b/src/openrct2/ride/gentle/Dodgems.cpp index d6833a1c44..a7f45d6407 100644 --- a/src/openrct2/ride/gentle/Dodgems.cpp +++ b/src/openrct2/ride/gentle/Dodgems.cpp @@ -34,9 +34,9 @@ static constexpr const uint32_t dodgems_fence_sprites[] = { SPR_DODGEMS_FENCE_TOP_LEFT, }; -static void paint_dodgems_roof(paint_session* session, int32_t height, int32_t offset) +static void paint_dodgems_roof(paint_session& session, int32_t height, int32_t offset) { - uint32_t image_id = (SPR_DODGEMS_ROOF_FRAME + offset) | session->TrackColours[SCHEME_TRACK]; + uint32_t image_id = (SPR_DODGEMS_ROOF_FRAME + offset) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 32, 32, 2 }); image_id = (SPR_DODGEMS_ROOF_GLASS + offset) | (EnumValue(FilterPaletteID::PaletteDarken3) << 19) | IMAGE_TYPE_TRANSPARENT; @@ -44,25 +44,25 @@ static void paint_dodgems_roof(paint_session* session, int32_t height, int32_t o } static void paint_dodgems( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_4x4[direction][trackSequence]; int32_t edges = edges_4x4[relativeTrackSequence]; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - uint32_t imageId = SPR_DODGEMS_FLOOR | session->TrackColours[SCHEME_SUPPORTS]; + uint32_t imageId = SPR_DODGEMS_FLOOR | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 30, 1 }, { 1, 1, height }); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_SUPPORTS], height, - dodgems_fence_sprites, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_SUPPORTS], height, + dodgems_fence_sprites, session.CurrentRotation); switch (direction) { diff --git a/src/openrct2/ride/gentle/FerrisWheel.cpp b/src/openrct2/ride/gentle/FerrisWheel.cpp index 13a6aada90..61b7ac34d1 100644 --- a/src/openrct2/ride/gentle/FerrisWheel.cpp +++ b/src/openrct2/ride/gentle/FerrisWheel.cpp @@ -47,7 +47,7 @@ static constexpr ferris_wheel_bound_box FerrisWheelData[] = { }; static void PaintFerrisWheelRiders( - paint_session* session, const rct_ride_entry& rideEntry, const Vehicle& vehicle, uint8_t direction, const CoordsXYZ offset, + paint_session& session, const rct_ride_entry& rideEntry, const Vehicle& vehicle, uint8_t direction, const CoordsXYZ offset, const CoordsXYZ bbLength, const CoordsXYZ bbOffset) { for (int32_t i = 0; i < 32; i += 2) @@ -64,9 +64,9 @@ static void PaintFerrisWheelRiders( } static void PaintFerrisWheelStructure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) @@ -75,8 +75,8 @@ static void PaintFerrisWheelStructure( auto vehicle = GetEntity(ride.vehicles[0]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } const auto& boundBox = FerrisWheelData[direction]; @@ -84,9 +84,9 @@ static void PaintFerrisWheelStructure( CoordsXYZ bbLength(boundBox.length.x, boundBox.length.y, 127); CoordsXYZ bbOffset(boundBox.offset.x, boundBox.offset.y, height + 7); - auto supportsImageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto supportsImageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto wheelImageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto wheelImageFlags = session->TrackColours[SCHEME_MISC]; + auto wheelImageFlags = session.TrackColours[SCHEME_MISC]; if (wheelImageFlags != IMAGE_TYPE_REMAP) { wheelImageTemplate = ImageId::FromUInt32(wheelImageFlags); @@ -105,12 +105,12 @@ static void PaintFerrisWheelStructure( } PaintAddImageAsChild(session, rightSupportImageId, offset, bbLength, bbOffset); - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintFerrisWheel( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_1x4[direction][trackSequence]; @@ -125,33 +125,33 @@ static void PaintFerrisWheel( edges = edges_1x4_ne_sw[relativeTrackSequence]; } - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); uint32_t imageId; - uint8_t rotation = session->CurrentRotation; - uint32_t colourFlags = session->TrackColours[SCHEME_MISC]; + uint8_t rotation = session.CurrentRotation; + uint32_t colourFlags = session.TrackColours[SCHEME_MISC]; - if (edges & EDGE_NW && track_paint_util_has_fence(EDGE_NW, session->MapPosition, trackElement, ride, rotation)) + if (edges & EDGE_NW && track_paint_util_has_fence(EDGE_NW, session.MapPosition, trackElement, ride, rotation)) { imageId = SPR_FENCE_ROPE_NW | colourFlags; PaintAddImageAsChild(session, imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2); } - if (edges & EDGE_NE && track_paint_util_has_fence(EDGE_NE, session->MapPosition, trackElement, ride, rotation)) + if (edges & EDGE_NE && track_paint_util_has_fence(EDGE_NE, session.MapPosition, trackElement, ride, rotation)) { imageId = SPR_FENCE_ROPE_NE | colourFlags; PaintAddImageAsChild(session, imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2); } - if (edges & EDGE_SE && track_paint_util_has_fence(EDGE_SE, session->MapPosition, trackElement, ride, rotation)) + if (edges & EDGE_SE && track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, rotation)) { // Bound box is slightly different from track_paint_util_paint_fences imageId = SPR_FENCE_ROPE_SE | colourFlags; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 0, 29, height + 3 }); } - if (edges & EDGE_SW && track_paint_util_has_fence(EDGE_SW, session->MapPosition, trackElement, ride, rotation)) + if (edges & EDGE_SW && track_paint_util_has_fence(EDGE_SW, session.MapPosition, trackElement, ride, rotation)) { imageId = SPR_FENCE_ROPE_SW | colourFlags; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 30, 0, height + 2 }); diff --git a/src/openrct2/ride/gentle/FlyingSaucers.cpp b/src/openrct2/ride/gentle/FlyingSaucers.cpp index df65fc2b89..e31d347cd7 100644 --- a/src/openrct2/ride/gentle/FlyingSaucers.cpp +++ b/src/openrct2/ride/gentle/FlyingSaucers.cpp @@ -35,26 +35,26 @@ static constexpr const uint32_t flying_saucers_fence_sprites[] = { * rct2: 0x008873D8 */ static void paint_flying_saucers( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_4x4[direction][trackSequence]; int32_t edges = edges_4x4[relativeTrackSequence]; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - uint32_t imageId = SPR_FLYING_SAUCERS_FLOOR | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_FLYING_SAUCERS_FLOOR | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 30, 1 }, { 1, 1, height }); } track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, - flying_saucers_fence_sprites, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, + flying_saucers_fence_sprites, session.CurrentRotation); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); diff --git a/src/openrct2/ride/gentle/GhostTrain.cpp b/src/openrct2/ride/gentle/GhostTrain.cpp index ba9c52b499..1093775a52 100644 --- a/src/openrct2/ride/gentle/GhostTrain.cpp +++ b/src/openrct2/ride/gentle/GhostTrain.cpp @@ -177,19 +177,19 @@ static uint8_t get_tunnel_doors_image_straight_flat(const TrackElement& trackEle /** rct2: 0x00770BEC */ static void paint_ghost_train_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = ghost_train_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); auto tunnelImage = get_tunnel_doors_image_straight_flat(trackElement, direction); paint_util_push_tunnel_rotated(session, direction, height, tunnelImage); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -199,18 +199,18 @@ static void paint_ghost_train_track_flat( /** rct2: 0x00770BFC */ static void paint_ghost_train_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = ghost_train_track_pieces_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - imageId = ghost_train_track_pieces_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = ghost_train_track_pieces_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 23, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) @@ -236,7 +236,7 @@ static void paint_ghost_train_track_25_deg_up( /** rct2: 0x00770C0C */ static void paint_ghost_train_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isBackwards = trackElement.GetTrackType() == TrackElemType::Down25ToFlat; @@ -250,15 +250,15 @@ static void paint_ghost_train_track_flat_to_25_deg_up( doorImage = doorOpeningOutwardsToImage[trackElement.GetDoorBState()]; } - uint32_t imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = ghost_train_track_pieces_flat_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (direction) @@ -283,18 +283,18 @@ static void paint_ghost_train_track_flat_to_25_deg_up( } static void paint_ghost_train_track_25_deg_up_to_flat_shared( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); - imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = ghost_train_track_pieces_25_deg_up_to_flat[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -304,7 +304,7 @@ static void paint_ghost_train_track_25_deg_up_to_flat_shared( /** rct2: 0x00770C1C */ static void paint_ghost_train_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_ghost_train_track_25_deg_up_to_flat_shared(session, ride, trackSequence, direction, height, trackElement); @@ -328,7 +328,7 @@ static void paint_ghost_train_track_25_deg_up_to_flat( /** rct2: 0x00770C2C */ static void paint_ghost_train_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_ghost_train_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -336,7 +336,7 @@ static void paint_ghost_train_track_25_deg_down( /** rct2: 0x00770C3C */ static void paint_ghost_train_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_ghost_train_track_25_deg_up_to_flat_shared(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -360,7 +360,7 @@ static void paint_ghost_train_track_flat_to_25_deg_down( /** rct2: 0x00770C4C */ static void paint_ghost_train_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_ghost_train_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -368,7 +368,7 @@ static void paint_ghost_train_track_25_deg_down_to_flat( /** rct2: 0x00770C5C, 0x00770C6C, 0x00770C7C */ static void paint_ghost_train_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -380,23 +380,23 @@ static void paint_ghost_train_station( SPR_STATION_BASE_B_NW_SE, }; - imageId = imageIds[direction] | session->TrackColours[SCHEME_MISC]; + imageId = imageIds[direction] | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 28, 3, height - 2, 0, 2, height); - imageId = ghost_train_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = ghost_train_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChildRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 0, height); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); if (direction == 0 || direction == 2) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } track_paint_util_draw_station(session, ride, direction, height, trackElement); @@ -407,11 +407,11 @@ static void paint_ghost_train_station( /** rct2: 0x00770C9C */ static void paint_ghost_train_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], ghost_train_track_pieces_quarter_turn_3_tiles, nullptr, defaultRightQuarterTurn3TilesBoundLengths, defaultRightQuarterTurn3TilesBoundOffsets); bool isBackwards = trackElement.GetTrackType() == TrackElemType::LeftQuarterTurn3Tiles; @@ -424,7 +424,7 @@ static void paint_ghost_train_track_right_quarter_turn_3_tiles( { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -448,7 +448,7 @@ static void paint_ghost_train_track_right_quarter_turn_3_tiles( /** rct2: 0x00770CAC */ static void paint_ghost_train_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -457,7 +457,7 @@ static void paint_ghost_train_track_left_quarter_turn_3_tiles( /** rct2: 0x00770CAC */ static void paint_ghost_train_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isBackwards = trackElement.GetTrackType() == TrackElemType::RightQuarterTurn1Tile; @@ -474,17 +474,17 @@ static void paint_ghost_train_track_left_quarter_turn_1_tile( } 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); + 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, tunnelStartImage, 0, tunnelEndImage); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + 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); } /** rct2: 0x00770CBC */ static void paint_ghost_train_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_ghost_train_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); @@ -492,10 +492,10 @@ static void paint_ghost_train_track_right_quarter_turn_1_tile( /** rct2: 0x00770CCC */ static void paint_ghost_train_track_spinning_tunnel( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = ghost_train_track_pieces_spinning_tunnel_track[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_spinning_tunnel_track[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 28, 20, 3, height, 2, 6, height); @@ -504,7 +504,7 @@ static void paint_ghost_train_track_spinning_tunnel( auto tunnelImage = get_tunnel_doors_image_straight_flat(trackElement, direction); paint_util_push_tunnel_rotated(session, direction, height, tunnelImage); - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -512,19 +512,19 @@ static void paint_ghost_train_track_spinning_tunnel( /** rct2: 0x00770CDC */ static void paint_ghost_train_track_brakes( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = ghost_train_track_pieces_brakes[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_brakes[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 3, height, 0, 6, height); auto tunnelImage = get_tunnel_doors_image_straight_flat(trackElement, direction); paint_util_push_tunnel_rotated(session, direction, height, tunnelImage); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/gentle/HauntedHouse.cpp b/src/openrct2/ride/gentle/HauntedHouse.cpp index a55ba33ef8..1c580ed9ba 100644 --- a/src/openrct2/ride/gentle/HauntedHouse.cpp +++ b/src/openrct2/ride/gentle/HauntedHouse.cpp @@ -29,9 +29,9 @@ static constexpr haunted_house_bound_box haunted_house_data[] = { }; static void PaintHauntedHouseStructure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint8_t part, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint8_t part, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); uint8_t frameNum = 0; @@ -42,20 +42,20 @@ static void PaintHauntedHouseStructure( auto vehicle = GetEntity(ride.vehicles[0]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; frameNum = vehicle->Pitch; } const auto& boundBox = haunted_house_data[part]; - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_MISC]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_MISC]); auto baseImageIndex = rideEntry->vehicles[0].base_image_id; auto imageIndex = baseImageIndex + direction; PaintAddImageAsParent( session, imageTemplate.WithIndex(imageIndex), { xOffset, yOffset, height }, { boundBox.length, 127 }, { boundBox.offset, height }); - if (session->DPI.zoom_level <= ZoomLevel{ 0 } && frameNum != 0) + if (session.DPI.zoom_level <= ZoomLevel{ 0 } && frameNum != 0) { imageIndex = baseImageIndex + 3 + ((direction & 3) * 18) + frameNum; PaintAddImageAsChild( @@ -63,27 +63,27 @@ static void PaintHauntedHouseStructure( { boundBox.length.x, boundBox.length.y, 127 }, { boundBox.offset.x, boundBox.offset.y, height }); } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintHauntedHouse( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/gentle/Maze.cpp b/src/openrct2/ride/gentle/Maze.cpp index faa525dd02..228b0cc659 100644 --- a/src/openrct2/ride/gentle/Maze.cpp +++ b/src/openrct2/ride/gentle/Maze.cpp @@ -47,18 +47,18 @@ enum * rct: 0x004ACF4A */ static void maze_paint_setup( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint16_t maze_entry = trackElement.GetMazeEntry(); maze_entry = Numerics::rol16(maze_entry, direction * 4); - uint32_t rotation = session->CurrentRotation; + uint32_t rotation = session.CurrentRotation; // draw ground - int32_t image_id = SPR_TERRAIN_DIRT | session->TrackColours[SCHEME_MISC]; + int32_t image_id = SPR_TERRAIN_DIRT | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, image_id, { 0, 0, height }, { 32, 32, 0 }); - wooden_a_supports_paint_setup(session, (rotation & 1) ? 0 : 1, 0, height, session->TrackColours[SCHEME_3]); + wooden_a_supports_paint_setup(session, (rotation & 1) ? 0 : 1, 0, height, session.TrackColours[SCHEME_3]); paint_util_set_segment_support_height(session, SEGMENTS_ALL & ~SEGMENT_C4, 0xFFFF, 0); @@ -79,7 +79,7 @@ static void maze_paint_setup( break; } - base_image_id |= session->TrackColours[SCHEME_MISC]; + base_image_id |= session.TrackColours[SCHEME_MISC]; image_id = base_image_id + SPR_MAZE_OFFSET_WALL_CENTRE; if (maze_entry & MAZE_ENTRY_FLAG_3) diff --git a/src/openrct2/ride/gentle/MerryGoRound.cpp b/src/openrct2/ride/gentle/MerryGoRound.cpp index 833823ecec..a5292ebad1 100644 --- a/src/openrct2/ride/gentle/MerryGoRound.cpp +++ b/src/openrct2/ride/gentle/MerryGoRound.cpp @@ -26,10 +26,10 @@ static constexpr const uint16_t MerryGoRoundBreakdownVibration[] = { }; static void PaintRiders( - paint_session* session, const Ride& ride, const rct_ride_entry& rideEntry, const Vehicle& vehicle, int32_t rotationOffset, + paint_session& session, const Ride& ride, const rct_ride_entry& rideEntry, const Vehicle& vehicle, int32_t rotationOffset, const CoordsXYZ& offset, const CoordsXYZ& bbLength, const CoordsXYZ& bbOffset) { - if (session->DPI.zoom_level > ZoomLevel{ 0 }) + if (session.DPI.zoom_level > ZoomLevel{ 0 }) return; if (!(ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK)) return; @@ -51,9 +51,9 @@ static void PaintRiders( } static void PaintCarousel( - paint_session* session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); height += 7; auto rideEntry = ride.GetRideEntry(); @@ -63,8 +63,8 @@ static void PaintCarousel( auto vehicle = GetEntity(ride.vehicles[0]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; if (ride.lifecycle_flags & (RIDE_LIFECYCLE_BREAKDOWN_PENDING | RIDE_LIFECYCLE_BROKEN_DOWN) && ride.breakdown_reason_pending == BREAKDOWN_CONTROL_FAILURE && ride.breakdown_sound_modifier >= 128) @@ -76,7 +76,7 @@ static void PaintCarousel( auto rotationOffset = 0; if (vehicle != nullptr) { - auto rotation = ((vehicle->sprite_direction >> 3) + session->CurrentRotation) << 5; + auto rotation = ((vehicle->sprite_direction >> 3) + session.CurrentRotation) << 5; rotationOffset = (vehicle->Pitch + rotation) % 128; } @@ -85,7 +85,7 @@ static void PaintCarousel( CoordsXYZ bbOffset(xOffset + 16, yOffset + 16, height); auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -96,27 +96,27 @@ static void PaintCarousel( PaintRiders(session, ride, *rideEntry, *vehicle, rotationOffset, offset, bbLength, bbOffset); - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintMerryGoRound( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/gentle/MiniGolf.cpp b/src/openrct2/ride/gentle/MiniGolf.cpp index 41a68a2838..e69f5ab83a 100644 --- a/src/openrct2/ride/gentle/MiniGolf.cpp +++ b/src/openrct2/ride/gentle/MiniGolf.cpp @@ -444,7 +444,7 @@ const size_t mini_golf_peep_animation_lengths[] = { // clang-format on static paint_struct* mini_golf_paint_util_7c( - paint_session* session, uint8_t direction, uint32_t image_id, int8_t x_offset, int8_t y_offset, int16_t bound_box_length_x, + paint_session& session, uint8_t direction, uint32_t image_id, int8_t x_offset, int8_t y_offset, int16_t bound_box_length_x, int16_t bound_box_length_y, int8_t bound_box_length_z, int16_t z_offset, int16_t bound_box_offset_x, int16_t bound_box_offset_y, int16_t bound_box_offset_z, uint32_t rotation) { @@ -460,15 +460,15 @@ static paint_struct* mini_golf_paint_util_7c( { bound_box_offset_x, bound_box_offset_y, bound_box_offset_z }); } -static bool mini_golf_paint_util_should_draw_fence(paint_session* session, const TrackElement& trackElement) +static bool mini_golf_paint_util_should_draw_fence(paint_session& session, const TrackElement& trackElement) { - if (!session->DidPassSurface) + if (!session.DidPassSurface) { // Should be above ground (have passed surface rendering) return false; } - const TileElement* surfaceElement = session->SurfaceElement; + const TileElement* surfaceElement = session.SurfaceElement; if (surfaceElement->base_height != trackElement.base_height) { return true; @@ -484,25 +484,25 @@ static bool mini_golf_paint_util_should_draw_fence(paint_session* session, const /** rct2: 0x0087F10C */ static void paint_mini_golf_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction & 1) { - imageId = SPR_MINI_GOLF_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_MINI_GOLF_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height, TUNNEL_PATH_AND_MINI_GOLF); } else { - imageId = SPR_MINI_GOLF_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_MINI_GOLF_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height, TUNNEL_PATH_AND_MINI_GOLF); } - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); @@ -510,18 +510,18 @@ static void paint_mini_golf_track_flat( { if (direction & 1) { - imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 10, 0, height + 2 }); - imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 7 }, { 22, 0, height + 2 }); } else { - imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 10, height + 2 }); - imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 22, height + 2 }); } } @@ -531,23 +531,23 @@ static void paint_mini_golf_track_flat( /** rct2: 0x0087F11C */ static void paint_mini_golf_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; - imageId = mini_golf_track_sprites_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); - imageId = mini_golf_track_sprites_25_deg_up[direction][1] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 10, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up[direction][1] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 10, height + 2, session.CurrentRotation); - imageId = mini_golf_track_sprites_25_deg_up[direction][2] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 22, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up[direction][2] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 15, height, 0, 22, height + 2, session.CurrentRotation); switch (direction) { @@ -570,23 +570,23 @@ static void paint_mini_golf_track_25_deg_up( /** rct2: 0x0087F12C */ static void paint_mini_golf_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; - imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); - imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 10, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 10, height + 2, session.CurrentRotation); - imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][2] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 22, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_flat_to_25_deg_up[direction][2] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 22, height + 2, session.CurrentRotation); switch (direction) { @@ -609,23 +609,23 @@ static void paint_mini_golf_track_flat_to_25_deg_up( /** rct2: 0x0087F13C */ static void paint_mini_golf_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; - imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][0] | session->TrackColours[SCHEME_TRACK]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][0] | session.TrackColours[SCHEME_TRACK]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); - imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][1] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 10, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][1] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 10, height + 2, session.CurrentRotation); - imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][2] | session->TrackColours[SCHEME_MISC]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 22, height + 2, session->CurrentRotation); + imageId = mini_golf_track_sprites_25_deg_up_to_flat[direction][2] | session.TrackColours[SCHEME_MISC]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 1, 11, height, 0, 22, height + 2, session.CurrentRotation); switch (direction) { @@ -648,7 +648,7 @@ static void paint_mini_golf_track_25_deg_up_to_flat( /** rct2: 0x0087F14C */ static void paint_mini_golf_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -656,7 +656,7 @@ static void paint_mini_golf_track_25_deg_down( /** rct2: 0x0087F15C */ static void paint_mini_golf_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -664,7 +664,7 @@ static void paint_mini_golf_track_flat_to_25_deg_down( /** rct2: 0x0087F16C */ static void paint_mini_golf_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -672,30 +672,29 @@ static void paint_mini_golf_track_25_deg_down_to_flat( /** rct2: 0x0087F17C, 0x0087F18C, 0x0087F19C */ static void paint_mini_golf_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const auto* stationObj = ride.GetStationObject(); uint32_t imageId; bool hasFence; - imageId = SPR_MINI_GOLF_STATION_FLOOR | session->TrackColours[SCHEME_TRACK]; - mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 28, 1, height, 0, 0, height, session->CurrentRotation); + imageId = SPR_MINI_GOLF_STATION_FLOOR | session.TrackColours[SCHEME_TRACK]; + mini_golf_paint_util_7c(session, direction, imageId, 0, 0, 32, 28, 1, height, 0, 0, height, session.CurrentRotation); if (direction & 1) { - hasFence = track_paint_util_has_fence(EDGE_NE, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, session.MapPosition, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { -10, 0, height }, { 1, 32, 7 }, { 0, 0, height + 2 }); } - bool hasSWFence = track_paint_util_has_fence( - EDGE_SW, session->MapPosition, trackElement, ride, session->CurrentRotation); + bool hasSWFence = track_paint_util_has_fence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 10, 0, height }, { 1, 32, 7 }, { 31, 0, height + 2 }); } @@ -707,18 +706,17 @@ static void paint_mini_golf_station( } else { - hasFence = track_paint_util_has_fence(EDGE_NW, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NW, session.MapPosition, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_BACK_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, -10, height }, { 32, 1, 7 }, { 0, 0, height + 2 }); } - bool hasSEFence = track_paint_util_has_fence( - EDGE_SE, session->MapPosition, trackElement, ride, session->CurrentRotation); + bool hasSEFence = track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_FLAT_FENCE_FRONT_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 10, height }, { 32, 1, 7 }, { 0, 31, height + 2 }); } @@ -728,7 +726,7 @@ static void paint_mini_golf_station( paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -736,15 +734,15 @@ static void paint_mini_golf_station( /** rct2: 0x0087F1AC */ static void paint_mini_golf_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; track_paint_util_left_quarter_turn_1_tile_paint( - session, 1, height, 0, direction, session->TrackColours[SCHEME_TRACK], mini_golf_track_sprites_quarter_turn_1_tile); + session, 1, height, 0, direction, session.TrackColours[SCHEME_TRACK], mini_golf_track_sprites_quarter_turn_1_tile); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0, direction), 0xFFFF, 0); @@ -758,7 +756,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( if (!shouldDrawFence) break; - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SW_NW | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SW_NW | session.TrackColours[SCHEME_MISC]; PaintAddImageAsChild(session, imageId, 0, 0, 26, 24, 1, height, 6, 2, height); break; @@ -767,7 +765,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( if (!shouldDrawFence) break; - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsChild(session, imageId, 0, 0, 26, 26, 1, height, 0, 0, height); break; @@ -776,7 +774,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( if (!shouldDrawFence) break; - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NE_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_NE_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsChild(session, imageId, 0, 0, 24, 26, 1, height, 2, 6, height); break; @@ -786,7 +784,7 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( if (!shouldDrawFence) break; - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SE_SW | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_BACK_SE_SW | session.TrackColours[SCHEME_MISC]; PaintAddImageAsChild(session, imageId, 0, 0, 24, 24, 1, height, 6, 6, height); break; } @@ -795,17 +793,17 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( { // 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( - session, 0, height, 24, direction, session->TrackColours[SCHEME_MISC], + session, 0, height, 24, direction, session.TrackColours[SCHEME_MISC], mini_golf_track_sprites_quarter_turn_1_tile_fence_front); switch (direction) { case 0: - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_SW_NW | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_SW_NW | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 5, 5, 5 }, { 24, 0, height + 2 }); break; case 2: - imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_NE_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_MINI_GOLF_QUARTER_TURN_1_TILE_FENCE_INSIDE_NE_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 5, 5, 5 }, { 0, 24, height + 2 }); break; } @@ -816,20 +814,20 @@ static void paint_mini_golf_track_left_quarter_turn_1_tile( /** rct2: 0x0087F1BC */ static void paint_mini_golf_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); } static void paint_mini_golf_hole_ab( - paint_session* session, uint8_t trackSequence, uint8_t direction, int32_t height, const uint32_t sprites[4][2][2]) + paint_session& session, uint8_t trackSequence, uint8_t direction, int32_t height, const uint32_t sprites[4][2][2]) { uint32_t imageId; CoordsXY boundBox, boundBoxOffset; bool drewSupports = wooden_a_supports_paint_setup( - session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, (direction & 1), 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); @@ -854,23 +852,23 @@ static void paint_mini_golf_hole_ab( boundBoxOffset = { 0, 3 }; } - imageId = sprites[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 0 }, { boundBoxOffset.x, boundBoxOffset.y, height + 24 }); if (drewSupports) { - imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS]; + imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); - imageId = sprites[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild( session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height); } else { - imageId = sprites[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); } @@ -878,7 +876,7 @@ static void paint_mini_golf_hole_ab( /** rct2: 0x0087F1CC */ static void paint_mini_golf_hole_a( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_hole_ab(session, trackSequence, direction, height, mini_golf_track_sprites_hole_a); @@ -886,7 +884,7 @@ static void paint_mini_golf_hole_a( /** rct2: 0x0087F1DC */ static void paint_mini_golf_hole_b( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_golf_hole_ab(session, trackSequence, direction, height, mini_golf_track_sprites_hole_b); @@ -894,14 +892,14 @@ static void paint_mini_golf_hole_b( /** rct2: 0x0087F1EC */ static void paint_mini_golf_hole_c( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; CoordsXY boundBox, boundBoxOffset; bool drewSupports = wooden_a_supports_paint_setup( - session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, (direction & 1), 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); @@ -926,7 +924,7 @@ static void paint_mini_golf_hole_c( boundBoxOffset = { 0, 3 }; } - imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; switch ((direction << 4) | trackSequence) { @@ -947,17 +945,17 @@ static void paint_mini_golf_hole_c( if (drewSupports) { - imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS]; + imageId = ((direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); - imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild( session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height); } else { - imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_c[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); } @@ -965,7 +963,7 @@ static void paint_mini_golf_hole_c( /** rct2: 0x0087F1FC */ static void paint_mini_golf_hole_d( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -974,7 +972,7 @@ static void paint_mini_golf_hole_d( int32_t supportType = (direction & 1); if (trackSequence == 2) supportType = 1 - supportType; - bool drewSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + bool drewSupports = wooden_a_supports_paint_setup(session, supportType, 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); @@ -1003,7 +1001,7 @@ static void paint_mini_golf_hole_d( boundBoxOffset = { 0, 3 }; } - imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; switch ((direction << 4) | trackSequence) { @@ -1040,17 +1038,17 @@ static void paint_mini_golf_hole_d( if (drewSupports) { - imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS]; + imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); - imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild( session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height); } else { - imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_d[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); } @@ -1058,7 +1056,7 @@ static void paint_mini_golf_hole_d( /** rct2: 0x0087F1FC */ static void paint_mini_golf_hole_e( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -1067,7 +1065,7 @@ static void paint_mini_golf_hole_e( int32_t supportType = (direction & 1); if (trackSequence == 2) supportType = 1 - supportType; - bool drewSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + bool drewSupports = wooden_a_supports_paint_setup(session, supportType, 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); @@ -1096,7 +1094,7 @@ static void paint_mini_golf_hole_e( boundBoxOffset = { 0, 3 }; } - imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; switch ((direction << 4) | trackSequence) { @@ -1133,17 +1131,17 @@ static void paint_mini_golf_hole_e( if (drewSupports) { - imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session->TrackColours[SCHEME_SUPPORTS]; + imageId = ((supportType & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS) | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); - imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild( session, imageId, 0, 0, boundBox.x, boundBox.y, 1, height, boundBoxOffset.x, boundBoxOffset.y, height); } else { - imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; + imageId = mini_golf_track_sprites_hole_e[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 1 }, { boundBoxOffset.x, boundBoxOffset.y, height }); } @@ -1202,20 +1200,20 @@ TRACK_PAINT_FUNCTION get_track_paint_function_mini_golf(int32_t trackType) * rct2: 0x006D42F0 */ void vehicle_visual_mini_golf_player( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle) + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle) { if (vehicle->num_peeps == 0) { return; } - rct_drawpixelinfo* edi = &session->DPI; + rct_drawpixelinfo* edi = &session.DPI; if (edi->zoom_level >= ZoomLevel{ 2 }) { return; } - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) { return; } @@ -1244,20 +1242,20 @@ void vehicle_visual_mini_golf_player( * rct2: 0x006D43C6 */ void vehicle_visual_mini_golf_ball( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle) + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle) { if (vehicle->mini_golf_current_animation != MiniGolfAnimation::PlaceBallDown) { return; } - rct_drawpixelinfo* edi = &session->DPI; + rct_drawpixelinfo* edi = &session.DPI; if (edi->zoom_level >= ZoomLevel{ 1 }) { return; } - if (session->ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) + if (session.ViewFlags & VIEWPORT_FLAG_INVISIBLE_PEEPS) { return; } diff --git a/src/openrct2/ride/gentle/MiniHelicopters.cpp b/src/openrct2/ride/gentle/MiniHelicopters.cpp index ec1f19ec78..151fb754ba 100644 --- a/src/openrct2/ride/gentle/MiniHelicopters.cpp +++ b/src/openrct2/ride/gentle/MiniHelicopters.cpp @@ -18,33 +18,33 @@ /** rct2: 0x */ static void paint_mini_helicopters_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction == 0 || direction == 2) { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height }); - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else if (direction == 1 || direction == 3) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height }); - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } @@ -56,29 +56,29 @@ static void paint_mini_helicopters_track_station( /** rct2: 0x0081F348 */ static void paint_mini_helicopters_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction & 1) { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height, TUNNEL_0); } else { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height, TUNNEL_0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 4, -1, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -88,7 +88,7 @@ static void paint_mini_helicopters_track_flat( /** rct2: 0x0081F368 */ static void paint_mini_helicopters_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -96,30 +96,30 @@ static void paint_mini_helicopters_track_flat_to_25_deg_up( switch (direction) { case 0: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height, TUNNEL_0); break; case 1: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height, TUNNEL_2); break; case 2: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height, TUNNEL_2); break; case 3: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height, TUNNEL_0); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -4, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -4, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -129,7 +129,7 @@ static void paint_mini_helicopters_track_flat_to_25_deg_up( /** rct2: 0x0081F358 */ static void paint_mini_helicopters_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -137,30 +137,30 @@ static void paint_mini_helicopters_track_25_deg_up( switch (direction) { case 0: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height - 8, TUNNEL_1); break; case 1: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height + 8, TUNNEL_2); break; case 2: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height + 8, TUNNEL_2); break; case 3: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height - 8, TUNNEL_1); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -9, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -9, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -170,7 +170,7 @@ static void paint_mini_helicopters_track_25_deg_up( /** rct2: 0x0081F378 */ static void paint_mini_helicopters_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -178,30 +178,30 @@ static void paint_mini_helicopters_track_25_deg_up_to_flat( switch (direction) { case 0: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height - 8, TUNNEL_0); break; case 1: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height + 8, TUNNEL_12); break; case 2: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height }); paint_util_push_tunnel_left(session, height + 8, TUNNEL_12); break; case 3: - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height }); paint_util_push_tunnel_right(session, height - 8, TUNNEL_0); break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -7, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -7, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -211,7 +211,7 @@ static void paint_mini_helicopters_track_25_deg_up_to_flat( /** rct2: 0x */ static void paint_mini_helicopters_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_helicopters_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -219,7 +219,7 @@ static void paint_mini_helicopters_track_flat_to_25_deg_down( /** rct2: 0x0081F388 */ static void paint_mini_helicopters_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_helicopters_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -227,7 +227,7 @@ static void paint_mini_helicopters_track_25_deg_down( /** rct2: 0x0081F3A8 */ static void paint_mini_helicopters_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_helicopters_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -235,18 +235,18 @@ static void paint_mini_helicopters_track_25_deg_down_to_flat( /** rct2: 0x0081F3E8 */ static void paint_mini_helicopters_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles); track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_0, direction, trackSequence); switch (trackSequence) { case 0: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_B4, direction), 0xFFFF, 0); break; @@ -255,7 +255,7 @@ static void paint_mini_helicopters_track_left_quarter_turn_3_tiles( session, paint_util_rotate_segments(SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_B8, direction), 0xFFFF, 0); break; case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D4 | SEGMENT_C0, direction), 0xFFFF, 0); break; @@ -273,7 +273,7 @@ static constexpr const uint8_t mini_helicopters_right_quarter_turn_3_tiles_to_le /** rct2: 0x0081F3F8 */ static void paint_mini_helicopters_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mini_helicopters_right_quarter_turn_3_tiles_to_left_turn_map[trackSequence]; @@ -283,11 +283,11 @@ static void paint_mini_helicopters_track_right_quarter_turn_3_tiles( /** rct2: 0x0081F408 */ static void paint_mini_helicopters_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_1_tile_paint( - session, 1, height, 0, direction, session->TrackColours[SCHEME_TRACK], + 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); @@ -298,7 +298,7 @@ static void paint_mini_helicopters_track_left_quarter_turn_1_tile( /** rct2: 0x0081F418 */ static void paint_mini_helicopters_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_mini_helicopters_track_left_quarter_turn_1_tile( diff --git a/src/openrct2/ride/gentle/MonorailCycles.cpp b/src/openrct2/ride/gentle/MonorailCycles.cpp index 7210974001..792fa7dd4e 100644 --- a/src/openrct2/ride/gentle/MonorailCycles.cpp +++ b/src/openrct2/ride/gentle/MonorailCycles.cpp @@ -160,7 +160,7 @@ static constexpr const uint32_t monorail_cycles_track_pieces_flat_quarter_turn_3 }; static paint_struct* paint_monorail_cycles_util_7c( - paint_session* session, bool flip, uint32_t image_id, int8_t x_offset, int8_t y_offset, int16_t bound_box_length_x, + paint_session& session, bool flip, uint32_t image_id, int8_t x_offset, int8_t y_offset, int16_t bound_box_length_x, int16_t bound_box_length_y, int8_t bound_box_length_z, int16_t z_offset, int16_t bound_box_offset_x, int16_t bound_box_offset_y, int16_t bound_box_offset_z, uint32_t rotation) { @@ -178,12 +178,12 @@ static paint_struct* paint_monorail_cycles_util_7c( /** rct2: 0x0088AD48 */ static void paint_monorail_cycles_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = monorail_cycles_track_pieces_flat[(direction & 1)] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_cycles_track_pieces_flat[(direction & 1)] | session.TrackColours[SCHEME_TRACK]; paint_monorail_cycles_util_7c( - session, static_cast(direction & 1), imageId, 0, 0, 32, 20, 3, height, 0, 6, height, session->CurrentRotation); + session, static_cast(direction & 1), imageId, 0, 0, 32, 20, 3, height, 0, 6, height, session.CurrentRotation); if (direction & 1) { @@ -196,7 +196,7 @@ static void paint_monorail_cycles_track_flat( metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 4, -1, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC, direction), 0xFFFF, 0); @@ -205,33 +205,33 @@ static void paint_monorail_cycles_track_flat( /** rct2: 0x0088ADD8 */ static void paint_monorail_cycles_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction == 0 || direction == 2) { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height }); - imageId = SPR_MONORAIL_CYCLES_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_MONORAIL_CYCLES_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 20, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else if (direction == 1 || direction == 3) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height }); - imageId = SPR_MONORAIL_CYCLES_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_MONORAIL_CYCLES_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 20, 32, 1, height, 0, 0, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } @@ -243,18 +243,18 @@ static void paint_monorail_cycles_station( /** rct2: 0x0088AD88 */ static void paint_monorail_cycles_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_3_tiles); track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height, TUNNEL_0, direction, trackSequence); switch (trackSequence) { case 0: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_B4, direction), 0xFFFF, 0); break; @@ -263,7 +263,7 @@ static void paint_monorail_cycles_track_left_quarter_turn_3_tiles( session, paint_util_rotate_segments(SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_B8, direction), 0xFFFF, 0); break; case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_STICK, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D4 | SEGMENT_C0, direction), 0xFFFF, 0); break; @@ -281,7 +281,7 @@ static constexpr const uint8_t monorail_cycles_right_quarter_turn_3_tiles_to_lef /** rct2: 0x0088AD98 */ static void paint_monorail_cycles_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = monorail_cycles_right_quarter_turn_3_tiles_to_left_turn_map[trackSequence]; @@ -305,11 +305,11 @@ static constexpr const int8_t monorail_cycles_track_right_quarter_turn_5_tiles_s /** rct2: 0x0088ADB8 */ static void paint_monorail_cycles_track_right_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 1, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 1, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], monorail_cycles_track_pieces_flat_quarter_turn_5_tiles, nullptr, defaultRightQuarterTurn5TilesBoundLengths, defaultRightQuarterTurn5TilesBoundOffsets); @@ -321,48 +321,48 @@ static void paint_monorail_cycles_track_right_quarter_turn_5_tiles( case 0: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 4, supportSpecial, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; case 2: if (direction == 0) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 8, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 7, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 5, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 6, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); break; case 5: if (direction == 0) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK : METAL_SUPPORTS_STICK_ALT, 7, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK : METAL_SUPPORTS_STICK_ALT, 5, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK : METAL_SUPPORTS_STICK_ALT, 6, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK : METAL_SUPPORTS_STICK_ALT, 8, supportSpecial, - supportHeight, session->TrackColours[SCHEME_SUPPORTS]); + supportHeight, session.TrackColours[SCHEME_SUPPORTS]); break; case 6: metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK : METAL_SUPPORTS_STICK_ALT, 4, supportSpecial, supportHeight, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -421,7 +421,7 @@ static void paint_monorail_cycles_track_right_quarter_turn_5_tiles( /** rct2: 0x0088ADA8 */ static void paint_monorail_cycles_track_left_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -431,7 +431,7 @@ static void paint_monorail_cycles_track_left_quarter_turn_5_tiles( /** rct2: 0x0088ADC8 */ static void paint_monorail_cycles_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -440,24 +440,24 @@ static void paint_monorail_cycles_track_s_bend_left( } uint32_t imageId = monorail_cycles_track_pieces_s_bend_left[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; switch (trackSequence) { case 0: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); break; case 1: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 0, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 0, height, session.CurrentRotation); break; case 2: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 6, height, session.CurrentRotation); break; case 3: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); break; } @@ -472,15 +472,15 @@ static void paint_monorail_cycles_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -495,15 +495,15 @@ static void paint_monorail_cycles_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -540,7 +540,7 @@ static void paint_monorail_cycles_track_s_bend_left( /** rct2: 0x*/ static void paint_monorail_cycles_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -549,24 +549,24 @@ static void paint_monorail_cycles_track_s_bend_right( } uint32_t imageId = monorail_cycles_track_pieces_s_bend_right[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; switch (trackSequence) { case 0: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); break; case 1: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 6, height, session.CurrentRotation); break; case 2: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 0, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 26, 1, height, 0, 0, height, session.CurrentRotation); break; case 3: paint_monorail_cycles_util_7c( - session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session->CurrentRotation); + session, direction & 1, imageId, 0, 0, 32, 20, 1, height, 0, 6, height, session.CurrentRotation); break; } @@ -581,15 +581,15 @@ static void paint_monorail_cycles_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 8, 0, height - 2, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -604,15 +604,15 @@ static void paint_monorail_cycles_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK_ALT, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } diff --git a/src/openrct2/ride/gentle/ObservationTower.cpp b/src/openrct2/ride/gentle/ObservationTower.cpp index 84e5cd1639..eb3a40e8de 100644 --- a/src/openrct2/ride/gentle/ObservationTower.cpp +++ b/src/openrct2/ride/gentle/ObservationTower.cpp @@ -62,7 +62,7 @@ static uint32_t GetObservationTowerVehicleBaseImageId( * rct2: 0x006D6258 */ void vehicle_visual_observation_tower( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { auto baseImageId = GetObservationTowerVehicleBaseImageId(vehicle, vehicleEntry, imageDirection); @@ -83,34 +83,34 @@ void vehicle_visual_observation_tower( /** rct2: 0x0070DD6C */ static void paint_observation_tower_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - CoordsXY position = session->MapPosition; + CoordsXY position = session.MapPosition; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); track_paint_util_paint_floor( - session, edges, session->TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetalB, stationObject); + session, edges, session.TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetalB, stationObject); track_paint_util_paint_fences( - session, edges, position, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, - session->CurrentRotation); + session, edges, position, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, + session.CurrentRotation); if (trackSequence == 0) { - uint32_t imageId = SPR_OBSERVATION_TOWER_SEGMENT_BASE | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_OBSERVATION_TOWER_SEGMENT_BASE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 8, 8, height + 3 }); - imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_OBSERVATION_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { 2, 2, 30 }, { 8, 8, height + 32 }); - imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_OBSERVATION_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { 2, 2, 30 }, { 8, 8, height + 64 }); paint_util_set_vertical_tunnel(session, height + 96); @@ -159,7 +159,7 @@ static void paint_observation_tower_base( /** rct2: 0x0070DD7C */ static void paint_observation_tower_section( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence == 1) @@ -167,13 +167,13 @@ static void paint_observation_tower_section( return; } - uint32_t imageId = SPR_OBSERVATION_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_OBSERVATION_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height }); const TileElement* nextTileElement = reinterpret_cast(&trackElement) + 1; if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ()) { - imageId = SPR_OBSERVATION_TOWER_SEGMENT_TOP | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_OBSERVATION_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height); } diff --git a/src/openrct2/ride/gentle/SpaceRings.cpp b/src/openrct2/ride/gentle/SpaceRings.cpp index 6c341e5ccb..4fc17bd9df 100644 --- a/src/openrct2/ride/gentle/SpaceRings.cpp +++ b/src/openrct2/ride/gentle/SpaceRings.cpp @@ -34,9 +34,9 @@ static constexpr const uint32_t space_rings_fence_sprites[] = { /** rct2: 0x00768A3B */ static void paint_space_rings_structure( - paint_session* session, const Ride& ride, uint8_t direction, uint32_t segment, int32_t height) + paint_session& session, const Ride& ride, uint8_t direction, uint32_t segment, int32_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); uint32_t vehicleIndex = (segment - direction) & 0x3; @@ -50,12 +50,12 @@ static void paint_space_rings_structure( auto vehicle = GetEntity(ride.vehicles[vehicleIndex]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; frameNum += static_cast(vehicle->Pitch) * 4; } - uint32_t imageColourFlags = session->TrackColours[SCHEME_MISC]; + uint32_t imageColourFlags = session.TrackColours[SCHEME_MISC]; if ((ride.colour_scheme_type & 3) != RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN) { vehicleIndex = 0; @@ -82,45 +82,45 @@ static void paint_space_rings_structure( } } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } /** rct2: 0x00767C40 */ static void paint_space_rings( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - CoordsXY position = session->MapPosition; + CoordsXY position = session.MapPosition; uint32_t imageId; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); switch (trackSequence) { case 7: - if (track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session->CurrentRotation)) + if (track_paint_util_has_fence(EDGE_SW, position, trackElement, ride, session.CurrentRotation)) { - imageId = SPR_SPACE_RINGS_FENCE_SW | session->TrackColours[SCHEME_MISC]; + imageId = SPR_SPACE_RINGS_FENCE_SW | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 29, 0, height + 2 }); } - if (track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session->CurrentRotation)) + if (track_paint_util_has_fence(EDGE_SE, position, trackElement, ride, session.CurrentRotation)) { - imageId = SPR_SPACE_RINGS_FENCE_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_SPACE_RINGS_FENCE_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 0, 29, height + 2 }); } break; default: track_paint_util_paint_fences( - session, edges, position, trackElement, ride, session->TrackColours[SCHEME_MISC], height, - space_rings_fence_sprites, session->CurrentRotation); + session, edges, position, trackElement, ride, session.TrackColours[SCHEME_MISC], height, + space_rings_fence_sprites, session.CurrentRotation); break; } diff --git a/src/openrct2/ride/gentle/SpiralSlide.cpp b/src/openrct2/ride/gentle/SpiralSlide.cpp index 81ecc137db..0384c2d638 100644 --- a/src/openrct2/ride/gentle/SpiralSlide.cpp +++ b/src/openrct2/ride/gentle/SpiralSlide.cpp @@ -48,80 +48,80 @@ enum }; static void spiral_slide_paint_tile_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id = 0; if (direction == 0) - image_id = SPIRAL_SLIDE_RIGHT_R0 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_RIGHT_R0 | session.TrackColours[SCHEME_TRACK]; if (direction == 1) - image_id = SPIRAL_SLIDE_RIGHT_R1 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_RIGHT_R1 | session.TrackColours[SCHEME_TRACK]; if (direction == 2) - image_id = SPIRAL_SLIDE_RIGHT_R2 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_RIGHT_R2 | session.TrackColours[SCHEME_TRACK]; if (direction == 3) - image_id = SPIRAL_SLIDE_RIGHT_R3 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_RIGHT_R3 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 16, 16, 108 }, { 16, 0, height + 3 }); } static void spiral_slide_paint_tile_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id = 0; if (direction == 0) - image_id = SPIRAL_SLIDE_LEFT_R0 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_LEFT_R0 | session.TrackColours[SCHEME_TRACK]; if (direction == 1) - image_id = SPIRAL_SLIDE_LEFT_R1 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_LEFT_R1 | session.TrackColours[SCHEME_TRACK]; if (direction == 2) - image_id = SPIRAL_SLIDE_LEFT_R2 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_LEFT_R2 | session.TrackColours[SCHEME_TRACK]; if (direction == 3) - image_id = SPIRAL_SLIDE_LEFT_R3 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_LEFT_R3 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 16, 16, 108 }, { 0, 16, height + 3 }); } static void spiral_slide_paint_tile_front( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t image_id = 0; if (direction == 1) { - image_id = SPIRAL_SLIDE_INSIDE_R1 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_INSIDE_R1 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 2, 16, 108 }, { -12, 0, height + 3 }); } else if (direction == 2) { - image_id = SPIRAL_SLIDE_INSIDE_R2 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_INSIDE_R2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 16, 2, 108 }, { 0, -12, height + 3 }); } if (direction == 0) { - image_id = SPIRAL_SLIDE_CENTRE_R0 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_CENTRE_R0 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 16, 8, 108 }, { 0, 8, height + 3 }); } else if (direction == 1) { - image_id = SPIRAL_SLIDE_CENTRE_R1 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_CENTRE_R1 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 2, 16, 108 }, { 14, 0, height + 3 }); } else if (direction == 2) { - image_id = SPIRAL_SLIDE_CENTRE_R2 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_CENTRE_R2 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 16, 2, 108 }, { 0, 14, height + 3 }); } else if (direction == 3) { - image_id = SPIRAL_SLIDE_CENTRE_R3 | session->TrackColours[SCHEME_TRACK]; + image_id = SPIRAL_SLIDE_CENTRE_R3 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, image_id, { 16, 16, height }, { 8, 16, 108 }, { 8, 0, height + 3 }); } - rct_drawpixelinfo* dpi = &session->DPI; + rct_drawpixelinfo* dpi = &session.DPI; if (dpi->zoom_level <= ZoomLevel{ 0 } && ride.slide_in_use != 0) { uint8_t slide_progress = ride.spiral_slide_progress; @@ -190,14 +190,14 @@ static constexpr const uint32_t spiral_slide_fence_sprites[] = { * rct: 0x007485C8 */ static void paint_spiral_slide( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_2x2[direction][trackSequence]; int32_t edges = edges_2x2[trackSequence]; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); // Base const StationObject* stationObject = ride.GetStationObject(); @@ -205,13 +205,13 @@ static void paint_spiral_slide( if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { uint32_t imageId = ((direction & 1) ? SPIRAL_SLIDE_BASE_B : SPIRAL_SLIDE_BASE_A) - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height }); } track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, - spiral_slide_fence_sprites, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, + spiral_slide_fence_sprites, session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/shops/Facility.cpp b/src/openrct2/ride/shops/Facility.cpp index 95a8c1cdf3..12e6f20d2b 100644 --- a/src/openrct2/ride/shops/Facility.cpp +++ b/src/openrct2/ride/shops/Facility.cpp @@ -18,10 +18,10 @@ #include "../TrackPaint.h" static void PaintFacility( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - bool hasSupports = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_3]); + bool hasSupports = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_3]); auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) @@ -37,12 +37,12 @@ static void PaintFacility( CoordsXYZ bbLength(lengthX, lengthY, 29); CoordsXYZ bbOffset(direction == 3 ? 28 : 2, direction == 0 ? 28 : 2, height); - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto imageIndex = firstVehicleEntry->base_image_id + ((direction + 2) & 3); auto imageId = imageTemplate.WithIndex(imageIndex); if (hasSupports) { - auto foundationImageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_3]); + auto foundationImageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_3]); auto foundationImageIndex = (direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS; auto foundationImageId = foundationImageTemplate.WithIndex(foundationImageIndex); PaintAddImageAsParent(session, foundationImageId, offset, bbLength, bbOffset); diff --git a/src/openrct2/ride/shops/Shop.cpp b/src/openrct2/ride/shops/Shop.cpp index cfc07ef960..29c0d5afcf 100644 --- a/src/openrct2/ride/shops/Shop.cpp +++ b/src/openrct2/ride/shops/Shop.cpp @@ -18,10 +18,10 @@ #include "../TrackPaint.h" static void PaintShop( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - bool hasSupports = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_3]); + bool hasSupports = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_3]); auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) @@ -35,7 +35,7 @@ static void PaintShop( CoordsXYZ bbLength(28, 28, 45); CoordsXYZ bbOffset(2, 2, height); - auto imageFlags = session->TrackColours[SCHEME_TRACK]; + auto imageFlags = session.TrackColours[SCHEME_TRACK]; if (imageFlags & IMAGE_TYPE_REMAP_2_PLUS) { imageFlags &= ~IMAGE_TYPE_REMAP_2_PLUS; @@ -45,7 +45,7 @@ static void PaintShop( auto imageIndex = firstVehicleEntry->base_image_id + direction; if (hasSupports) { - auto foundationImageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_3]); + auto foundationImageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_3]); auto foundationImageIndex = (direction & 1) ? SPR_FLOOR_PLANKS_90_DEG : SPR_FLOOR_PLANKS; auto foundationImageId = foundationImageTemplate.WithIndex(foundationImageIndex); PaintAddImageAsParent(session, foundationImageId, offset, bbLength, bbOffset); diff --git a/src/openrct2/ride/thrill/3dCinema.cpp b/src/openrct2/ride/thrill/3dCinema.cpp index 5f13a080d5..ce8ed9cbd5 100644 --- a/src/openrct2/ride/thrill/3dCinema.cpp +++ b/src/openrct2/ride/thrill/3dCinema.cpp @@ -17,9 +17,9 @@ #include "../TrackPaint.h" static void Paint3dCinemaDome( - paint_session* session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) @@ -27,12 +27,12 @@ static void Paint3dCinemaDome( if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && ride.vehicles[0] != SPRITE_INDEX_NULL) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = GetEntity(ride.vehicles[0]); + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = GetEntity(ride.vehicles[0]); } auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -42,30 +42,30 @@ static void Paint3dCinemaDome( PaintAddImageAsParent( session, imageId, { xOffset, yOffset, height + 3 }, { 24, 24, 47 }, { xOffset + 16, yOffset + 16, height + 3 }); - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } /** * rct2: 0x0076574C */ static void Paint3dCinema( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/thrill/Enterprise.cpp b/src/openrct2/ride/thrill/Enterprise.cpp index 1fa470245c..5cb2646d33 100644 --- a/src/openrct2/ride/thrill/Enterprise.cpp +++ b/src/openrct2/ride/thrill/Enterprise.cpp @@ -19,10 +19,10 @@ #include "../Vehicle.h" static void PaintEnterpriseRiders( - paint_session* session, const rct_ride_entry& rideEntry, Vehicle& vehicle, uint32_t imageOffset, const CoordsXYZ& offset, + paint_session& session, const rct_ride_entry& rideEntry, Vehicle& vehicle, uint32_t imageOffset, const CoordsXYZ& offset, const CoordsXYZ& bbLength, const CoordsXYZ& bbOffset) { - if (session->DPI.zoom_level > ZoomLevel{ 0 }) + if (session.DPI.zoom_level > ZoomLevel{ 0 }) return; if (imageOffset >= 12) return; @@ -42,9 +42,9 @@ static void PaintEnterpriseRiders( } static void PaintEnterpriseStructure( - paint_session* session, const Ride& ride, int8_t xOffset, int8_t yOffset, uint16_t height, const TrackElement& trackElement) + paint_session& session, const Ride& ride, int8_t xOffset, int8_t yOffset, uint16_t height, const TrackElement& trackElement) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); const auto* rideEntry = get_ride_entry(ride.subtype); if (rideEntry == nullptr) return; @@ -55,8 +55,8 @@ static void PaintEnterpriseStructure( vehicle = GetEntity(ride.vehicles[0]); if (vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } } @@ -64,14 +64,14 @@ static void PaintEnterpriseStructure( CoordsXYZ bbLength(24, 24, 48); CoordsXYZ bbOffset(0, 0, height + 7); - uint32_t imageOffset = trackElement.GetDirectionWithOffset(session->CurrentRotation); + uint32_t imageOffset = trackElement.GetDirectionWithOffset(session.CurrentRotation); if (vehicle != nullptr) { - imageOffset = (vehicle->Pitch << 2) + (((vehicle->sprite_direction >> 3) + session->CurrentRotation) % 4); + imageOffset = (vehicle->Pitch << 2) + (((vehicle->sprite_direction >> 3) + session.CurrentRotation) % 4); } auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -84,26 +84,26 @@ static void PaintEnterpriseStructure( PaintEnterpriseRiders(session, *rideEntry, *vehicle, imageOffset, offset, bbLength, bbOffset); } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintEnterprise( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_4x4[direction][trackSequence]; int32_t edges = edges_4x4[trackSequence]; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/thrill/GoKarts.cpp b/src/openrct2/ride/thrill/GoKarts.cpp index 3b6e0146bc..4efd9e1b24 100644 --- a/src/openrct2/ride/thrill/GoKarts.cpp +++ b/src/openrct2/ride/thrill/GoKarts.cpp @@ -126,32 +126,32 @@ static constexpr const uint32_t go_karts_track_pieces_25_deg_up_to_flat[4][2] = /** rct2: 0x0074A748 */ static void paint_go_karts_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction == 0 || direction == 2) { - imageId = SPR_GO_KARTS_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); - imageId = SPR_GO_KARTS_FLAT_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_FRONT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 3 }, { 0, 29, height + 2 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } else { - imageId = SPR_GO_KARTS_FLAT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 32, 1 }, { 2, 0, height }); - imageId = SPR_GO_KARTS_FLAT_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_FRONT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 3 }, { 29, 0, height + 2 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -159,13 +159,13 @@ static void paint_go_karts_track_flat( /** rct2: 0x0074A758 */ static void paint_go_karts_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; paint_struct* ps; - imageId = go_karts_track_pieces_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); @@ -175,7 +175,7 @@ static void paint_go_karts_track_25_deg_up( ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 32, 1 }, { 2, 0, height }); } - imageId = go_karts_track_pieces_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 11 }, { 0, 29, height + 2 }); @@ -185,24 +185,24 @@ static void paint_go_karts_track_25_deg_up( PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 11 }, { 29, 0, height + 2 }); } - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_7); break; case 1: - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_SQUARE_8); break; case 2: - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_SQUARE_8); break; case 3: - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_7); break; } @@ -213,13 +213,13 @@ static void paint_go_karts_track_25_deg_up( /** rct2: 0x0074A768 */ static void paint_go_karts_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; paint_struct* ps; - imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); @@ -229,7 +229,7 @@ static void paint_go_karts_track_flat_to_25_deg_up( ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 32, 1 }, { 2, 0, height }); } - imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_flat_to_25_deg_up[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 11 }, { 0, 29, height + 2 }); @@ -239,24 +239,24 @@ static void paint_go_karts_track_flat_to_25_deg_up( PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 11 }, { 29, 0, height + 2 }); } - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_8); break; case 2: - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_8); break; case 3: - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; } @@ -267,13 +267,13 @@ static void paint_go_karts_track_flat_to_25_deg_up( /** rct2: 0x */ static void paint_go_karts_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; paint_struct* ps; - imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); @@ -283,7 +283,7 @@ static void paint_go_karts_track_25_deg_up_to_flat( ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 32, 1 }, { 2, 0, height }); } - imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = go_karts_track_pieces_25_deg_up_to_flat[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 11 }, { 0, 29, height + 2 }); @@ -293,24 +293,24 @@ static void paint_go_karts_track_25_deg_up_to_flat( PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 11 }, { 29, 0, height + 2 }); } - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; switch (direction) { case 0: - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_FLAT); break; case 1: - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_14); break; case 2: - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_14); break; case 3: - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_FLAT); break; } @@ -321,7 +321,7 @@ static void paint_go_karts_track_25_deg_up_to_flat( /** rct2: 0x0074A788 */ static void paint_go_karts_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_go_karts_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -329,7 +329,7 @@ static void paint_go_karts_track_25_deg_down( /** rct2: 0x0074A798 */ static void paint_go_karts_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_go_karts_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -337,7 +337,7 @@ static void paint_go_karts_track_flat_to_25_deg_down( /** rct2: 0x0074A7A8 */ static void paint_go_karts_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_go_karts_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -345,7 +345,7 @@ static void paint_go_karts_track_25_deg_down_to_flat( /** rct2: 0x */ static void paint_go_karts_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const auto* stationObj = ride.GetStationObject(); @@ -359,7 +359,7 @@ static void paint_go_karts_station( sprites = go_karts_track_pieces_starting_grid_end; } - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); @@ -371,16 +371,16 @@ static void paint_go_karts_station( if (direction == 0 || direction == 2) { - hasFence = track_paint_util_has_fence(EDGE_NW, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NW, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height); } else { - hasFence = track_paint_util_has_fence(EDGE_NE, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_NE, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height); } - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 3 }, { 0, 29, height + 2 }); @@ -396,12 +396,12 @@ static void paint_go_karts_station( if (direction == 0 || direction == 2) { - hasFence = track_paint_util_has_fence(EDGE_SE, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, stationObj, height); } else { - hasFence = track_paint_util_has_fence(EDGE_SW, session->MapPosition, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation); track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, stationObj, height); } @@ -413,40 +413,40 @@ static void paint_go_karts_station( { case 0: imageId = (hasGreenLight ? SPR_GO_KARTS_START_POLE_GREEN_SW_NE : SPR_GO_KARTS_START_POLE_RED_SW_NE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 1, 1, height + 4 }); imageId = (hasGreenLight ? SPR_GO_KARTS_START_LIGHTS_GREEN_SW_NE : SPR_GO_KARTS_START_LIGHTS_RED_SW_NE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 1, 28, height + 4 }); break; case 1: - imageId = SPR_GO_KARTS_START_POLE_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_START_POLE_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 1, 28, height + 4 }); - imageId = SPR_GO_KARTS_START_LIGHTS_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_START_LIGHTS_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 28, 28, height + 4 }); break; case 2: - imageId = SPR_GO_KARTS_START_POLE_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_START_POLE_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 28, 1, height + 4 }); - imageId = SPR_GO_KARTS_START_LIGHTS_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_START_LIGHTS_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 28, 28, height + 4 }); break; case 3: imageId = (hasGreenLight ? SPR_GO_KARTS_START_POLE_GREEN_SE_NW : SPR_GO_KARTS_START_POLE_RED_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 1, 1, height + 4 }); imageId = (hasGreenLight ? SPR_GO_KARTS_START_LIGHTS_GREEN_SE_NW : SPR_GO_KARTS_START_LIGHTS_RED_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 3, 3, 13 }, { 28, 1, height + 4 }); break; } } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -454,7 +454,7 @@ static void paint_go_karts_station( /** rct2: 0x0074A7E8 */ static void paint_go_karts_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -462,40 +462,40 @@ static void paint_go_karts_track_left_quarter_turn_1_tile( switch (direction) { case 0: - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 28, 1 }, { 0, 2, height }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 3 }, { 29, 2, height + 2 }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 1, 3 }, { 14, 29, height + 2 }); break; case 1: - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 30, 1 }, { 0, 0, height }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 1, 3 }, { 2, 29, height + 2 }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 16, 3 }, { 29, 2, height + 2 }); break; case 2: - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 32, 1 }, { 2, 0, height }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 3 }, { 2, 2, height + 2 }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_B_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 16, 3 }, { 29, 14, height + 2 }); break; case 3: - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height }); - imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_GO_KARTS_FLAT_QUARTER_TURN_1_TILE_EDGE_A_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 3 }, { 29, 29, height + 2 }); // The empty sprite isn't drawn @@ -516,7 +516,7 @@ static void paint_go_karts_track_left_quarter_turn_1_tile( break; } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); @@ -524,7 +524,7 @@ static void paint_go_karts_track_left_quarter_turn_1_tile( /** rct2: 0x0074A7F8 */ static void paint_go_karts_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_go_karts_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); diff --git a/src/openrct2/ride/thrill/LaunchedFreefall.cpp b/src/openrct2/ride/thrill/LaunchedFreefall.cpp index 32ddef893c..b6521b7fd2 100644 --- a/src/openrct2/ride/thrill/LaunchedFreefall.cpp +++ b/src/openrct2/ride/thrill/LaunchedFreefall.cpp @@ -30,7 +30,7 @@ enum * rct2: 0x006D5FAB */ void vehicle_visual_launched_freefall( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { auto imageFlags = SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour); @@ -49,7 +49,7 @@ void vehicle_visual_launched_freefall( PaintAddImageAsParent(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 }); // Draw peeps: - if (session->DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) + if (session.DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) { baseImage_id = vehicleEntry->base_image_id + 9; if ((vehicle->restraints_position / 64) == 3) @@ -85,35 +85,35 @@ void vehicle_visual_launched_freefall( /** rct2: 0x006FD1F8 */ static void paint_launched_freefall_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); track_paint_util_paint_floor( - session, edges, session->TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetal, stationObject); + session, edges, session.TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetal, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, - fenceSpritesMetal, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, fenceSpritesMetal, + session.CurrentRotation); if (trackSequence == 0) { - uint32_t imageId = SPR_LAUNCHED_FREEFALL_TOWER_BASE | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_LAUNCHED_FREEFALL_TOWER_BASE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 8, 8, height + 3 }); height += 32; - imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height }); height += 32; - imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height }); paint_util_set_vertical_tunnel(session, height + 32); @@ -159,7 +159,7 @@ static void paint_launched_freefall_base( /** rct2: 0x006FD208 */ static void paint_launched_freefall_tower_section( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence == 1) @@ -167,13 +167,13 @@ static void paint_launched_freefall_tower_section( return; } - uint32_t imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height }); const TileElement* nextTileElement = reinterpret_cast(&trackElement) + 1; if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ()) { - imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT_TOP | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_LAUNCHED_FREEFALL_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height); } diff --git a/src/openrct2/ride/thrill/MagicCarpet.cpp b/src/openrct2/ride/thrill/MagicCarpet.cpp index 9ff823ba14..b0a3c32dd6 100644 --- a/src/openrct2/ride/thrill/MagicCarpet.cpp +++ b/src/openrct2/ride/thrill/MagicCarpet.cpp @@ -104,10 +104,10 @@ static const Vehicle* GetFirstVehicle(const Ride& ride) } static void PaintMagicCarpetRiders( - paint_session* session, const rct_ride_entry& rideEntry, const Vehicle& vehicle, Direction direction, + paint_session& session, const rct_ride_entry& rideEntry, const Vehicle& vehicle, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbOffset, const CoordsXYZ& bbSize) { - if (session->DPI.zoom_level > ZoomLevel{ 1 }) + if (session.DPI.zoom_level > ZoomLevel{ 1 }) return; auto baseImageIndex = rideEntry.vehicles[0].base_image_id + 4 + direction; @@ -121,11 +121,11 @@ static void PaintMagicCarpetRiders( } static void PaintMagicCarpetFrame( - paint_session* session, Plane plane, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbOffset, + paint_session& session, Plane plane, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbOffset, const CoordsXYZ& bbSize) { auto imageIndex = GetMagicCarpetFrameImage(plane, direction); - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto imageId = imageTemplate.WithIndex(imageIndex); if (plane == Plane::Back) { @@ -138,17 +138,17 @@ static void PaintMagicCarpetFrame( } static void PaintMagicCarpetPendulum( - paint_session* session, Plane plane, int32_t swing, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbOffset, + paint_session& session, Plane plane, int32_t swing, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbOffset, const CoordsXYZ& bbSize) { auto imageIndex = GetMagicCarpetPendulumImage(plane, direction, swing); - auto imageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto imageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto imageId = imageTemplate.WithIndex(imageIndex); PaintAddImageAsChild(session, imageId, offset, bbSize, bbOffset); } static void PaintMagicCarpetVehicle( - paint_session* session, const Ride& ride, uint8_t direction, int32_t swing, CoordsXYZ offset, const CoordsXYZ& bbOffset, + paint_session& session, const Ride& ride, uint8_t direction, int32_t swing, CoordsXYZ offset, const CoordsXYZ& bbOffset, const CoordsXYZ& bbSize) { const auto* rideEntry = ride.GetRideEntry(); @@ -175,7 +175,7 @@ static void PaintMagicCarpetVehicle( // Vehicle auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -191,17 +191,17 @@ static void PaintMagicCarpetVehicle( } static void PaintMagicCarpetStructure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); auto swing = 0; auto* vehicle = GetFirstVehicle(ride); if (vehicle != nullptr) { swing = vehicle->Pitch; - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } bound_box bb = MagicCarpetBounds[direction]; @@ -222,12 +222,12 @@ static void PaintMagicCarpetStructure( PaintMagicCarpetPendulum(session, Plane::Front, swing, direction, offset, bbOffset, bbSize); PaintMagicCarpetFrame(session, Plane::Front, direction, offset, bbOffset, bbSize); - session->InteractionType = ViewportInteractionItem::Ride; - session->CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; } static void PaintMagicCarpet( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_1x4[direction][trackSequence]; @@ -240,22 +240,22 @@ static void PaintMagicCarpet( if (direction & 1) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } const StationObject* stationObject = ride.GetStationObject(); if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - uint32_t imageId = SPR_STATION_BASE_D | session->TrackColours[SCHEME_SUPPORTS]; + uint32_t imageId = SPR_STATION_BASE_D | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); } break; diff --git a/src/openrct2/ride/thrill/MotionSimulator.cpp b/src/openrct2/ride/thrill/MotionSimulator.cpp index 24036facf3..aa7128709f 100644 --- a/src/openrct2/ride/thrill/MotionSimulator.cpp +++ b/src/openrct2/ride/thrill/MotionSimulator.cpp @@ -30,14 +30,14 @@ enum }; static void PaintMotionSimulatorVehicle( - paint_session* session, const Ride& ride, int8_t offsetX, int8_t offsetY, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, int8_t offsetX, int8_t offsetY, uint8_t direction, int32_t height, const TrackElement& trackElement) { auto rideEntry = ride.GetRideEntry(); if (rideEntry == nullptr) return; - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); CoordsXYZ offset(offsetX, offsetY, height + 2); Vehicle* vehicle = nullptr; @@ -46,8 +46,8 @@ static void PaintMotionSimulatorVehicle( vehicle = GetEntity(ride.vehicles[0]); if (vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } } @@ -65,7 +65,7 @@ static void PaintMotionSimulatorVehicle( } auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { imageTemplate = ImageId::FromUInt32(imageFlags); @@ -97,27 +97,27 @@ static void PaintMotionSimulatorVehicle( break; } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintMotionSimulator( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_2x2[direction][trackSequence]; int32_t edges = edges_2x2[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_SUPPORTS], height, - fenceSpritesRope, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_SUPPORTS], height, + fenceSpritesRope, session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/thrill/RotoDrop.cpp b/src/openrct2/ride/thrill/RotoDrop.cpp index 8cbfdc983b..97b1843415 100644 --- a/src/openrct2/ride/thrill/RotoDrop.cpp +++ b/src/openrct2/ride/thrill/RotoDrop.cpp @@ -34,7 +34,7 @@ enum * rct2: 0x006D5DA9 */ void vehicle_visual_roto_drop( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { auto imageFlags = SPRITE_ID_PALETTE_COLOUR_2(vehicle->colours.body_colour, vehicle->colours.trim_colour); @@ -98,36 +98,36 @@ void vehicle_visual_roto_drop( /** rct2: 0x00886194 */ static void paint_roto_drop_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); track_paint_util_paint_floor( - session, edges, session->TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetalB, stationObject); + session, edges, session.TrackColours[SCHEME_SUPPORTS], height, floorSpritesMetalB, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, - fenceSpritesMetalB, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, + session.CurrentRotation); if (trackSequence == 0) { uint32_t imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_90_DEG : SPR_ROTO_DROP_TOWER_BASE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 8, 8, height + 3 }); imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { 2, 2, 30 }, { 8, 8, height + 32 }); imageId = (direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { 2, 2, 30 }, { 8, 8, height + 64 }); paint_util_set_vertical_tunnel(session, height + 96); @@ -177,7 +177,7 @@ static void paint_roto_drop_base( /** rct2: 0x008861A4 */ static void paint_roto_drop_tower_section( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence == 1) @@ -185,13 +185,13 @@ static void paint_roto_drop_tower_section( return; } - uint32_t imageId = SPR_ROTO_DROP_TOWER_SEGMENT | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_ROTO_DROP_TOWER_SEGMENT | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height }); const TileElement* nextTileElement = reinterpret_cast(&trackElement) + 1; if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ()) { - imageId = SPR_ROTO_DROP_TOWER_SEGMENT_TOP | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_ROTO_DROP_TOWER_SEGMENT_TOP | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 2, 2, 30, height, 8, 8, height); } diff --git a/src/openrct2/ride/thrill/SwingingInverterShip.cpp b/src/openrct2/ride/thrill/SwingingInverterShip.cpp index 58bbe44179..3be74ace69 100644 --- a/src/openrct2/ride/thrill/SwingingInverterShip.cpp +++ b/src/openrct2/ride/thrill/SwingingInverterShip.cpp @@ -66,9 +66,9 @@ static constexpr const uint32_t SwingingInverterShipFrameSprites[] = { }; static void PaintSwingingInverterShipStructure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); rct_ride_entry* rideEntry = get_ride_entry(ride.subtype); if (rideEntry == nullptr) @@ -85,8 +85,8 @@ static void PaintSwingingInverterShipStructure( vehicle = GetEntity(ride.vehicles[0]); if (vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } } @@ -110,12 +110,12 @@ static void PaintSwingingInverterShipStructure( } auto vehicleImageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { vehicleImageTemplate = ImageId::FromUInt32(imageFlags); } - auto frameImageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto frameImageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto vehicleImageId = vehicleImageTemplate.WithIndex(vehicleImageIndex); auto frameImageId = frameImageTemplate.WithIndex(SwingingInverterShipFrameSprites[direction]); @@ -130,12 +130,12 @@ static void PaintSwingingInverterShipStructure( PaintAddImageAsChild(session, vehicleImageId, offset, bbLength, bbOffset); } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintSwingingInverterShip( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_1x4[direction][trackSequence]; @@ -147,36 +147,36 @@ static void PaintSwingingInverterShip( { if (direction & 1) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - imageId = SPR_STATION_BASE_D | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_BASE_D | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); switch (direction) { case 0: - imageId = SPR_STATION_PLATFORM_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_PLATFORM_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 24, height + 9 }, { 32, 8, 1 }); break; case 1: - imageId = SPR_STATION_PLATFORM_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_PLATFORM_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 24, 0, height + 9 }, { 8, 32, 1 }); break; case 2: - imageId = SPR_STATION_PLATFORM_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_PLATFORM_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 8, 1, height + 9, -2, 0, height); break; case 3: - imageId = SPR_STATION_PLATFORM_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_PLATFORM_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 8, 32, 1, height + 9, 0, -2, height); break; } diff --git a/src/openrct2/ride/thrill/SwingingShip.cpp b/src/openrct2/ride/thrill/SwingingShip.cpp index ccd5fcb77c..dbde4df17f 100644 --- a/src/openrct2/ride/thrill/SwingingShip.cpp +++ b/src/openrct2/ride/thrill/SwingingShip.cpp @@ -64,10 +64,10 @@ static constexpr const uint32_t SwingingShipFrameSprites[][2] = { }; static void PaintSwingingShipRiders( - paint_session* session, const Ride& ride, const Vehicle& vehicle, ImageIndex baseImageIndex, Direction direction, + paint_session& session, const Ride& ride, const Vehicle& vehicle, ImageIndex baseImageIndex, Direction direction, const CoordsXYZ& offset, const CoordsXYZ& bbLength, const CoordsXYZ& bbOffset) { - if (session->DPI.zoom_level > ZoomLevel{ 1 }) + if (session.DPI.zoom_level > ZoomLevel{ 1 }) return; if (!(ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK)) @@ -92,9 +92,9 @@ static void PaintSwingingShipRiders( } static void PaintSwingingShipStructure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t axisOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); rct_ride_entry* rideEntry = get_ride_entry(ride.subtype); if (rideEntry == nullptr) @@ -104,8 +104,8 @@ static void PaintSwingingShipStructure( if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && ride.vehicles[0] != SPRITE_INDEX_NULL) { vehicle = GetEntity(ride.vehicles[0]); - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } const auto& bounds = SwingingShipData[direction]; @@ -132,9 +132,9 @@ static void PaintSwingingShipStructure( } } - auto supportsImageTemplate = ImageId::FromUInt32(session->TrackColours[SCHEME_TRACK]); + auto supportsImageTemplate = ImageId::FromUInt32(session.TrackColours[SCHEME_TRACK]); auto vehicleImageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; if (imageFlags != IMAGE_TYPE_REMAP) { vehicleImageTemplate = ImageId::FromUInt32(imageFlags); @@ -157,12 +157,12 @@ static void PaintSwingingShipStructure( imageId = supportsImageTemplate.WithIndex(SwingingShipFrameSprites[(direction & 1)][1]); PaintAddImageAsChild(session, imageId, offset, bbLength, bbOffset); - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintSwingingShip( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint8_t relativeTrackSequence = track_map_1x5[direction][trackSequence]; @@ -174,27 +174,27 @@ static void PaintSwingingShip( if (relativeTrackSequence == 1 || relativeTrackSequence == 4) { - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else if (direction & 1) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - imageId = SPR_STATION_BASE_A_NW_SE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_BASE_A_NW_SE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); } } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (stationObject != nullptr && !(stationObject->Flags & STATION_OBJECT_FLAGS::NO_PLATFORMS)) { - imageId = SPR_STATION_BASE_A_SW_NE | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_STATION_BASE_A_SW_NE | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); } } @@ -208,44 +208,44 @@ static void PaintSwingingShip( if (relativeTrackSequence != 1 && relativeTrackSequence != 4) { hasFence = track_paint_util_has_fence( - EDGE_NE, session->MapPosition, trackElement, ride, session->CurrentRotation); + EDGE_NE, session.MapPosition, trackElement, ride, session.CurrentRotation); if (relativeTrackSequence == 2) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_NW_SE : SPR_STATION_PLATFORM_BEGIN_NW_SE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_NW_SE : SPR_STATION_PLATFORM_NW_SE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; } PaintAddImageAsChild(session, imageId, 0, 0, 8, 32, 1, height + 9, 0, -2, height + 9); imageId = (relativeTrackSequence == 2 ? SPR_STATION_PLATFORM_BEGIN_NW_SE : SPR_STATION_PLATFORM_NW_SE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 24, 0, height + 9 }, { 8, 32, 1 }); hasFence = track_paint_util_has_fence( - EDGE_SW, session->MapPosition, trackElement, ride, session->CurrentRotation); + EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation); if (relativeTrackSequence == 3) { if (hasFence) { - imageId = SPR_STATION_BEGIN_ANGLE_FENCE_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_BEGIN_ANGLE_FENCE_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 11 }, { 1, 32, 7 }); } else { - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 23, 31, height + 11 }, { 8, 1, 7 }); } - imageId = SPR_STATION_FENCE_SMALL_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_SMALL_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 11 }, { 8, 1, 7 }); } else if (hasFence) { - imageId = SPR_STATION_FENCE_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 11 }, { 1, 32, 7 }); } } @@ -255,44 +255,44 @@ static void PaintSwingingShip( if (relativeTrackSequence != 1 && relativeTrackSequence != 4) { hasFence = track_paint_util_has_fence( - EDGE_NW, session->MapPosition, trackElement, ride, session->CurrentRotation); + EDGE_NW, session.MapPosition, trackElement, ride, session.CurrentRotation); if (relativeTrackSequence == 2) { imageId = (hasFence ? SPR_STATION_PLATFORM_BEGIN_FENCED_SW_NE : SPR_STATION_PLATFORM_BEGIN_SW_NE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; } else { imageId = (hasFence ? SPR_STATION_PLATFORM_FENCED_SW_NE : SPR_STATION_PLATFORM_SW_NE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; } PaintAddImageAsChild(session, imageId, 0, 0, 32, 8, 1, height + 9, -2, 0, height + 9); imageId = (relativeTrackSequence == 2 ? SPR_STATION_PLATFORM_BEGIN_SW_NE : SPR_STATION_PLATFORM_SW_NE) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 24, height + 9 }, { 32, 8, 1 }); hasFence = track_paint_util_has_fence( - EDGE_SE, session->MapPosition, trackElement, ride, session->CurrentRotation); + EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation); if (relativeTrackSequence == 3) { if (hasFence) { - imageId = SPR_STATION_BEGIN_ANGLE_FENCE_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_BEGIN_ANGLE_FENCE_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 11 }, { 32, 1, 7 }); } else { - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 31, 23, height + 11 }, { 1, 8, 7 }); } - imageId = SPR_STATION_FENCE_SMALL_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_SMALL_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 31, 0, height + 11 }, { 1, 8, 7 }); } else if (hasFence) { - imageId = SPR_STATION_FENCE_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_STATION_FENCE_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 31, height + 11 }, { 32, 1, 7 }); } } diff --git a/src/openrct2/ride/thrill/TopSpin.cpp b/src/openrct2/ride/thrill/TopSpin.cpp index 4d584301b8..5d53d8ef8a 100644 --- a/src/openrct2/ride/thrill/TopSpin.cpp +++ b/src/openrct2/ride/thrill/TopSpin.cpp @@ -34,10 +34,10 @@ static int8_t TopSpinSeatPositionOffset[] = { }; static void PaintTopSpinRiders( - paint_session* session, const Vehicle& vehicle, ImageIndex seatImageIndex, const CoordsXYZ& seatCoords, + paint_session& session, const Vehicle& vehicle, ImageIndex seatImageIndex, const CoordsXYZ& seatCoords, const CoordsXYZ& bbLength, const CoordsXYZ& bbOffset) { - if (session->DPI.zoom_level >= ZoomLevel{ 2 }) + if (session.DPI.zoom_level >= ZoomLevel{ 2 }) return; for (int i = 0; i < 4; i++) @@ -58,7 +58,7 @@ static void PaintTopSpinRiders( } static void PaintTopSpinSeat( - paint_session* session, const Ride& ride, const rct_ride_entry& rideEntry, const Vehicle* vehicle, Direction direction, + paint_session& session, const Ride& ride, const rct_ride_entry& rideEntry, const Vehicle* vehicle, Direction direction, uint32_t armRotation, uint32_t seatRotation, const CoordsXYZ& offset, const CoordsXYZ& bbLength, const CoordsXYZ& bbOffset) { if (armRotation >= std::size(TopSpinSeatHeightOffset)) @@ -100,7 +100,7 @@ static void PaintTopSpinSeat( break; } - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); if (imageFlags != IMAGE_TYPE_REMAP) { @@ -115,7 +115,7 @@ static void PaintTopSpinSeat( } static void PaintTopSpinVehicle( - paint_session* session, int32_t al, int32_t cl, const Ride& ride, uint8_t direction, int32_t height, + paint_session& session, int32_t al, int32_t cl, const Ride& ride, uint8_t direction, int32_t height, const TrackElement& tileElement) { const auto* rideEntry = get_ride_entry(ride.subtype); @@ -126,7 +126,7 @@ static void PaintTopSpinVehicle( // As we will be drawing a vehicle we need to backup the trackElement that // is assigned to the drawings. - const TileElement* curTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* curTileElement = static_cast(session.CurrentlyDrawnItem); height += 3; uint8_t seatRotation = 0; @@ -134,8 +134,8 @@ static void PaintTopSpinVehicle( const auto* vehicle = GetEntity(ride.vehicles[0]); if (ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; armRotation = vehicle->Pitch; seatRotation = vehicle->bank_rotation; @@ -153,7 +153,7 @@ static void PaintTopSpinVehicle( CoordsXYZ bbLength = { 24, 24, 90 }; CoordsXYZ bbOffset = { al + 16, cl + 16, height }; - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; auto supportImageTemplate = ImageId(0, ride.track_colour[0].main, ride.track_colour[0].supports); auto armImageTemplate = ImageId(0, ride.track_colour[0].main, ride.track_colour[0].additional); if (imageFlags != IMAGE_TYPE_REMAP) @@ -181,27 +181,27 @@ static void PaintTopSpinVehicle( imageIndex = vehicleEntry.base_image_id + 573 + ((direction & 1) << 1); PaintAddImageAsChild(session, supportImageTemplate.WithIndex(imageIndex), offset, bbLength, bbOffset); - session->CurrentlyDrawnItem = curTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = curTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } static void PaintTopSpin( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; int32_t edges = edges_3x3[trackSequence]; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_TRACK], height, floorSpritesCork, stationObject); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, fenceSpritesRope, - session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, fenceSpritesRope, + session.CurrentRotation); switch (trackSequence) { diff --git a/src/openrct2/ride/thrill/Twist.cpp b/src/openrct2/ride/thrill/Twist.cpp index 61994252e1..adb0af3980 100644 --- a/src/openrct2/ride/thrill/Twist.cpp +++ b/src/openrct2/ride/thrill/Twist.cpp @@ -20,9 +20,9 @@ /** rct2: 0x0076E5C9 */ static void paint_twist_structure( - paint_session* session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) + paint_session& session, const Ride& ride, uint8_t direction, int8_t xOffset, int8_t yOffset, uint16_t height) { - const TileElement* savedTileElement = static_cast(session->CurrentlyDrawnItem); + const TileElement* savedTileElement = static_cast(session.CurrentlyDrawnItem); rct_ride_entry* rideEntry = get_ride_entry(ride.subtype); Vehicle* vehicle = nullptr; @@ -38,8 +38,8 @@ static void paint_twist_structure( { vehicle = GetEntity(ride.vehicles[0]); - session->InteractionType = ViewportInteractionItem::Entity; - session->CurrentlyDrawnItem = vehicle; + session.InteractionType = ViewportInteractionItem::Entity; + session.CurrentlyDrawnItem = vehicle; } uint32_t frameNum = (direction * 88) % 216; @@ -50,7 +50,7 @@ static void paint_twist_structure( frameNum = frameNum % 216; } - auto imageFlags = session->TrackColours[SCHEME_MISC]; + auto imageFlags = session.TrackColours[SCHEME_MISC]; auto imageTemplate = ImageId(0, ride.vehicle_colours[0].Body, ride.vehicle_colours[0].Trim); if (imageFlags != IMAGE_TYPE_REMAP) { @@ -63,7 +63,7 @@ static void paint_twist_structure( PaintAddImageAsParent( session, imageId, { xOffset, yOffset, height }, { 24, 24, 48 }, { xOffset + 16, yOffset + 16, height }); - if (session->DPI.zoom_level < ZoomLevel{ 1 } && ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) + if (session.DPI.zoom_level < ZoomLevel{ 1 } && ride.lifecycle_flags & RIDE_LIFECYCLE_ON_TRACK && vehicle != nullptr) { for (int32_t i = 0; i < vehicle->num_peeps; i += 2) { @@ -75,13 +75,13 @@ static void paint_twist_structure( } } - session->CurrentlyDrawnItem = savedTileElement; - session->InteractionType = ViewportInteractionItem::Ride; + session.CurrentlyDrawnItem = savedTileElement; + session.InteractionType = ViewportInteractionItem::Ride; } /** rct2: 0x0076D858 */ static void paint_twist( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; @@ -90,29 +90,29 @@ static void paint_twist( uint32_t imageId; - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_MISC]); const StationObject* stationObject = ride.GetStationObject(); - track_paint_util_paint_floor(session, edges, session->TrackColours[SCHEME_MISC], height, floorSpritesCork, stationObject); + track_paint_util_paint_floor(session, edges, session.TrackColours[SCHEME_MISC], height, floorSpritesCork, stationObject); switch (trackSequence) { case 7: - if (track_paint_util_has_fence(EDGE_SW, session->MapPosition, trackElement, ride, session->CurrentRotation)) + if (track_paint_util_has_fence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation)) { - imageId = SPR_FENCE_ROPE_SW | session->TrackColours[SCHEME_MISC]; + imageId = SPR_FENCE_ROPE_SW | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 29, 0, height + 3 }); } - if (track_paint_util_has_fence(EDGE_SE, session->MapPosition, trackElement, ride, session->CurrentRotation)) + if (track_paint_util_has_fence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation)) { - imageId = SPR_FENCE_ROPE_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_FENCE_ROPE_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 0, 29, height + 3 }); } break; default: track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_MISC], height, - fenceSpritesRope, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_MISC], height, + fenceSpritesRope, session.CurrentRotation); break; } diff --git a/src/openrct2/ride/transport/Chairlift.cpp b/src/openrct2/ride/transport/Chairlift.cpp index 862aaa61ae..b17d554077 100644 --- a/src/openrct2/ride/transport/Chairlift.cpp +++ b/src/openrct2/ride/transport/Chairlift.cpp @@ -75,7 +75,7 @@ const uint32_t chairlift_bullwheel_frames[] = { SPR_CHAIRLIFT_BULLWHEEL_FRAME_4, }; -static void chairlift_paint_util_draw_supports(paint_session* session, int32_t segments, uint16_t height) +static void chairlift_paint_util_draw_supports(paint_session& session, int32_t segments, uint16_t height) { bool success = false; @@ -86,7 +86,7 @@ static void chairlift_paint_util_draw_supports(paint_session* session, int32_t s continue; } - if (metal_a_supports_paint_setup(session, METAL_SUPPORTS_TRUSS, s, 0, height, session->TrackColours[SCHEME_SUPPORTS])) + if (metal_a_supports_paint_setup(session, METAL_SUPPORTS_TRUSS, s, 0, height, session.TrackColours[SCHEME_SUPPORTS])) { success = true; } @@ -97,7 +97,7 @@ static void chairlift_paint_util_draw_supports(paint_session* session, int32_t s return; } - support_height* supportSegments = session->SupportSegments; + support_height* supportSegments = session.SupportSegments; for (int32_t s = 0; s < 9; s++) { if (!(segments & segment_offsets[s])) @@ -105,8 +105,8 @@ static void chairlift_paint_util_draw_supports(paint_session* session, int32_t s continue; } uint16_t temp = supportSegments[s].height; - supportSegments[s].height = session->Support.height; - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TRUSS, s, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + supportSegments[s].height = session.Support.height; + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TRUSS, s, 0, height, session.TrackColours[SCHEME_SUPPORTS]); supportSegments[s].height = temp; } } @@ -176,10 +176,10 @@ static bool chairlift_paint_util_is_last_track( } static void chairlift_paint_station_ne_sw( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - const CoordsXY pos = session->MapPosition; + const CoordsXY pos = session.MapPosition; auto trackType = trackElement.GetTrackType(); uint32_t imageId; @@ -188,35 +188,35 @@ static void chairlift_paint_station_ne_sw( const auto* stationObj = ride.GetStationObject(); - wooden_a_supports_paint_setup(session, 0, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, 0, 0, height, session.TrackColours[SCHEME_MISC]); if (!isStart && !isEnd) { - imageId = ((direction == 0) ? SPR_20502 : SPR_20504) | session->TrackColours[SCHEME_TRACK]; + imageId = ((direction == 0) ? SPR_20502 : SPR_20504) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); } - imageId = SPR_FLOOR_METAL | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_FLOOR_METAL | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height }); - bool hasFence = track_paint_util_has_fence(EDGE_NW, pos, trackElement, ride, session->CurrentRotation); + bool hasFence = track_paint_util_has_fence(EDGE_NW, pos, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_FENCE_METAL_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 32, 1, 7, height, 0, 2, height + 2); } track_paint_util_draw_station_covers(session, EDGE_NW, hasFence, stationObj, height); if ((direction == 2 && isStart) || (direction == 0 && isEnd)) { - imageId = SPR_FENCE_METAL_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 1, 28, 7, height, 2, 2, height + 4); } - hasFence = track_paint_util_has_fence(EDGE_SE, pos, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SE, pos, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_FENCE_METAL_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 27 }, { 0, 30, height + 2 }); } track_paint_util_draw_station_covers(session, EDGE_SE, hasFence, stationObj, height); @@ -225,23 +225,23 @@ static void chairlift_paint_station_ne_sw( bool drawBackColumn = true; if ((direction == 0 && isStart) || (direction == 2 && isEnd)) { - imageId = SPR_FENCE_METAL_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 27 }, { 30, 2, height + 4 }); - imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK]; + imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 }); - imageId = SPR_CHAIRLIFT_STATION_END_CAP_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_END_CAP_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4); drawFrontColumn = false; } else if ((direction == 2 && isStart) || (direction == 0 && isEnd)) { - imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK]; + imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 }); - imageId = SPR_CHAIRLIFT_STATION_END_CAP_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_END_CAP_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4); drawBackColumn = false; @@ -249,13 +249,13 @@ static void chairlift_paint_station_ne_sw( if (drawBackColumn) { - imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 16, height + 2 }, { 1, 1, 7 }, { 1, 16, height + 2 }); } if (drawFrontColumn) { - imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_COLUMN_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 30, 16, height + 2 }, { 1, 1, 7 }, { 1, 16, height + 2 }); // bound offset x is wrong? } @@ -266,10 +266,10 @@ static void chairlift_paint_station_ne_sw( } static void chairlift_paint_station_se_nw( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - const CoordsXY pos = session->MapPosition; + const CoordsXY pos = session.MapPosition; auto trackType = trackElement.GetTrackType(); uint32_t imageId; @@ -278,35 +278,35 @@ static void chairlift_paint_station_se_nw( const auto* stationObj = ride.GetStationObject(); - wooden_a_supports_paint_setup(session, 1, 0, height, session->TrackColours[SCHEME_MISC]); + wooden_a_supports_paint_setup(session, 1, 0, height, session.TrackColours[SCHEME_MISC]); if (!isStart && !isEnd) { - imageId = ((direction == 1) ? SPR_20503 : SPR_20505) | session->TrackColours[SCHEME_TRACK]; + imageId = ((direction == 1) ? SPR_20503 : SPR_20505) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); } - imageId = SPR_FLOOR_METAL | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_FLOOR_METAL | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height }); - bool hasFence = track_paint_util_has_fence(EDGE_NE, pos, trackElement, ride, session->CurrentRotation); + bool hasFence = track_paint_util_has_fence(EDGE_NE, pos, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_FENCE_METAL_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 1, 32, 7, height, 2, 0, height + 2); } track_paint_util_draw_station_covers(session, EDGE_NE, hasFence, stationObj, height); if ((direction == 1 && isStart) || (direction == 3 && isEnd)) { - imageId = SPR_FENCE_METAL_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 28, 1, 7, height, 2, 2, height + 4); } - hasFence = track_paint_util_has_fence(EDGE_SW, pos, trackElement, ride, session->CurrentRotation); + hasFence = track_paint_util_has_fence(EDGE_SW, pos, trackElement, ride, session.CurrentRotation); if (hasFence) { - imageId = SPR_FENCE_METAL_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 30, 0, height + 2 }); } track_paint_util_draw_station_covers(session, EDGE_SW, hasFence, stationObj, height); @@ -315,23 +315,23 @@ static void chairlift_paint_station_se_nw( bool drawLeftColumn = true; if ((direction == 1 && isStart) || (direction == 3 && isEnd)) { - imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK]; + imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 }); - imageId = SPR_CHAIRLIFT_STATION_END_CAP_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_END_CAP_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4); drawLeftColumn = false; } else if ((direction == 3 && isStart) || (direction == 1 && isEnd)) { - imageId = SPR_FENCE_METAL_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_FENCE_METAL_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 27 }, { 2, 30, height + 4 }); - imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session->TrackColours[SCHEME_TRACK]; + imageId = chairlift_bullwheel_frames[ride.chairlift_bullwheel_rotation / 16384] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 26 }, { 14, 14, height + 4 }); - imageId = SPR_CHAIRLIFT_STATION_END_CAP_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_END_CAP_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, 0, 0, 4, 4, 26, height, 14, 14, height + 4); drawRightColumn = false; @@ -339,13 +339,13 @@ static void chairlift_paint_station_se_nw( if (drawLeftColumn) { - imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 16, 0, height + 2 }, { 1, 1, 7 }, { 16, 1, height + 2 }); } if (drawRightColumn) { - imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_STATION_COLUMN_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent( session, imageId, { 16, 30, height + 2 }, { 1, 1, 7 }, { 16, 1, height + 2 }); // bound offset x is wrong? @@ -358,7 +358,7 @@ static void chairlift_paint_station_se_nw( /** rct2: 0x00744068 */ static void chairlift_paint_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction % 2) @@ -372,19 +372,19 @@ static void chairlift_paint_station( } static void chairlift_paint_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; if (direction & 1) { - imageId = SPR_CHAIRLIFT_CABLE_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } else { - imageId = SPR_CHAIRLIFT_CABLE_FLAT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_FLAT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); } @@ -395,7 +395,7 @@ static void chairlift_paint_flat( /** rct2: 0x00743FD8 */ static void chairlift_paint_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -403,25 +403,25 @@ static void chairlift_paint_25_deg_up( switch (direction) { case 0: - imageId = SPR_CHAIRLIFT_CABLE_UP_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_UP_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_7); break; case 1: - imageId = SPR_CHAIRLIFT_CABLE_UP_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_UP_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); paint_util_push_tunnel_right(session, height + 8, TUNNEL_SQUARE_8); break; case 2: - imageId = SPR_CHAIRLIFT_CABLE_UP_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_UP_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); paint_util_push_tunnel_left(session, height + 8, TUNNEL_SQUARE_8); break; case 3: - imageId = SPR_CHAIRLIFT_CABLE_UP_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CABLE_UP_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_7); break; @@ -433,7 +433,7 @@ static void chairlift_paint_25_deg_up( /** rct2: 0x00743FD8 */ static void chairlift_paint_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -441,40 +441,40 @@ static void chairlift_paint_flat_to_25_deg_up( switch (direction) { case 0: - imageId = SPR_20508 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20508 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); - imageId = SPR_20520 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20520 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = SPR_20509 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20509 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); - imageId = SPR_20521 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20521 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_8); break; case 2: - imageId = SPR_20510 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20510 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); - imageId = SPR_20522 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20522 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_8); break; case 3: - imageId = SPR_20511 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20511 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); - imageId = SPR_20523 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20523 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); @@ -488,7 +488,7 @@ static void chairlift_paint_flat_to_25_deg_up( /** rct2: 0x00743FF8 */ static void chairlift_paint_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -496,40 +496,40 @@ static void chairlift_paint_25_deg_up_to_flat( switch (direction) { case 0: - imageId = SPR_20512 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20512 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); - imageId = SPR_20524 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20524 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = SPR_20513 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20513 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); - imageId = SPR_20525 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20525 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_right(session, height + 8, TUNNEL_14); break; case 2: - imageId = SPR_20514 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20514 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 2 }, { 0, 13, height + 28 }); - imageId = SPR_20526 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20526 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_left(session, height + 8, TUNNEL_14); break; case 3: - imageId = SPR_20515 | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_20515 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 2 }, { 13, 0, height + 28 }); - imageId = SPR_20527 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20527 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 4, 4, 25 }, { 14, 14, height + 1 }); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_FLAT); @@ -543,7 +543,7 @@ static void chairlift_paint_25_deg_up_to_flat( /** rct2: 0x00744008 */ static void chairlift_paint_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { chairlift_paint_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -551,7 +551,7 @@ static void chairlift_paint_25_deg_down( /** rct2: 0x00744018 */ static void chairlift_paint_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { chairlift_paint_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -559,7 +559,7 @@ static void chairlift_paint_flat_to_25_deg_down( /** rct2: 0x00744028 */ static void chairlift_paint_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { chairlift_paint_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -567,7 +567,7 @@ static void chairlift_paint_25_deg_down_to_flat( /** rct2: 0x00744038 */ static void chairlift_paint_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -575,50 +575,50 @@ static void chairlift_paint_left_quarter_turn_1_tile( switch (direction) { case 0: - imageId = SPR_CHAIRLIFT_CORNER_NW_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CORNER_NW_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 16, 2 }, { 16, 0, height + 28 }); - imageId = SPR_20532 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20532 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 16, 4, height }); - imageId = SPR_20536 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20536 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 28, 4, height }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = SPR_CHAIRLIFT_CORNER_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CORNER_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 16, 2 }, { 0, 0, height + 28 }); - imageId = SPR_20533 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20533 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 16, 4, height }); - imageId = SPR_20537 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20537 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 4, 16, height }); break; case 2: - imageId = SPR_CHAIRLIFT_CORNER_SE_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CORNER_SE_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 16, 2 }, { 0, 16, height + 28 }); - imageId = SPR_20534 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20534 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 4, 16, height }); - imageId = SPR_20538 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20538 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 16, 28, height }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; case 3: - imageId = SPR_CHAIRLIFT_CORNER_SW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_CHAIRLIFT_CORNER_SW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 16, 16, 2 }, { 16, 16, height + 28 }); - imageId = SPR_20535 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20535 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 28, 16, height }); - imageId = SPR_20539 | session->TrackColours[SCHEME_SUPPORTS]; + imageId = SPR_20539 | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 16, 28, height }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); @@ -634,7 +634,7 @@ static void chairlift_paint_left_quarter_turn_1_tile( /** rct2: 0x00744048 */ static void chairlift_paint_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { chairlift_paint_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); diff --git a/src/openrct2/ride/transport/Lift.cpp b/src/openrct2/ride/transport/Lift.cpp index f262343b84..fe566b34b7 100644 --- a/src/openrct2/ride/transport/Lift.cpp +++ b/src/openrct2/ride/transport/Lift.cpp @@ -34,7 +34,7 @@ static constexpr const uint32_t lift_cage_sprites[][2] = { { SPR_LIFT_CAGE_NW_BACK, SPR_LIFT_CAGE_NW_FRONT }, }; -static void paint_lift_cage(paint_session* session, int8_t index, uint32_t colourFlags, int32_t height, uint8_t rotation) +static void paint_lift_cage(paint_session& session, int8_t index, uint32_t colourFlags, int32_t height, uint8_t rotation) { uint32_t imageId; @@ -47,18 +47,18 @@ static void paint_lift_cage(paint_session* session, int8_t index, uint32_t colou /** rct2: 0x0076C6CC */ static void paint_lift_base( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = track_map_3x3[direction][trackSequence]; if (trackSequence == 0) { - paint_lift_cage(session, direction, session->TrackColours[SCHEME_TRACK], height, session->CurrentRotation); + paint_lift_cage(session, direction, session.TrackColours[SCHEME_TRACK], height, session.CurrentRotation); - paint_lift_cage(session, -1, session->TrackColours[SCHEME_TRACK], height + 32, session->CurrentRotation); + paint_lift_cage(session, -1, session.TrackColours[SCHEME_TRACK], height + 32, session.CurrentRotation); - paint_lift_cage(session, -1, session->TrackColours[SCHEME_TRACK], height + 64, session->CurrentRotation); + paint_lift_cage(session, -1, session.TrackColours[SCHEME_TRACK], height + 64, session.CurrentRotation); paint_util_set_vertical_tunnel(session, height + 96); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -74,12 +74,12 @@ static void paint_lift_base( int32_t edges = edges_3x3[trackSequence]; - uint32_t imageId = SPR_FLOOR_METAL_B | session->TrackColours[SCHEME_SUPPORTS]; + uint32_t imageId = SPR_FLOOR_METAL_B | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height }); track_paint_util_paint_fences( - session, edges, session->MapPosition, trackElement, ride, session->TrackColours[SCHEME_TRACK], height, - fenceSpritesMetalB, session->CurrentRotation); + session, edges, session.MapPosition, trackElement, ride, session.TrackColours[SCHEME_TRACK], height, fenceSpritesMetalB, + session.CurrentRotation); int32_t blockedSegments = 0; switch (trackSequence) @@ -116,7 +116,7 @@ static void paint_lift_base( /** rct2: 0x0076C6DC */ static void paint_lift_tower_section( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (trackSequence == 1) @@ -124,7 +124,7 @@ static void paint_lift_tower_section( return; } - paint_lift_cage(session, -1, session->TrackColours[SCHEME_TRACK], height, session->CurrentRotation); + paint_lift_cage(session, -1, session.TrackColours[SCHEME_TRACK], height, session.CurrentRotation); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); diff --git a/src/openrct2/ride/transport/MiniatureRailway.cpp b/src/openrct2/ride/transport/MiniatureRailway.cpp index 82d4b3de0c..27423c5bd0 100644 --- a/src/openrct2/ride/transport/MiniatureRailway.cpp +++ b/src/openrct2/ride/transport/MiniatureRailway.cpp @@ -624,29 +624,29 @@ static uint32_t miniature_railway_track_to_grooved_indent( /** rct2: 0x008AD0C0 */ static void paint_miniature_railway_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool paintAsGravel = false; bool paintGrooved = false; - if (session->PathElementOnSameHeight != nullptr) + if (session.PathElementOnSameHeight != nullptr) { paintAsGravel = true; paintGrooved = true; } - bool isSupported = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + bool isSupported = wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); uint32_t imageId, imageIdAlt; // In the following 3 calls to PaintAddImageAsParentRotated/PaintAddImageAsChildRotated, we add 1 to the // bound_box_offset_z argument to make straight tracks draw above footpaths if (isSupported) { - imageId = miniature_railway_track_floor[direction] | session->TrackColours[SCHEME_SUPPORTS]; + imageId = miniature_railway_track_floor[direction] | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = miniature_railway_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (!paintAsGravel) { PaintAddImageAsChildRotated(session, direction, imageId, 0, 6, 32, 20, 2, height, 0, 6, height); @@ -661,7 +661,7 @@ static void paint_miniature_railway_track_flat( imageIdAlt = miniature_railway_track_to_grooved(imageId); PaintAddImageAsChildRotated(session, direction, imageIdAlt, 0, 6, 32, 20, 2, height, 0, 6, height + 2); imageIdAlt = miniature_railway_track_to_grooved_indent( - imageId, session->PathElementOnSameHeight, direction, session->CurrentRotation); + imageId, session.PathElementOnSameHeight, direction, session.CurrentRotation); PaintAddImageAsChildRotated( session, direction, (imageIdAlt & 0x7FFFF) | IMAGE_TYPE_REMAP | IMAGE_TYPE_TRANSPARENT @@ -671,7 +671,7 @@ static void paint_miniature_railway_track_flat( } else { - imageId = miniature_railway_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (!paintAsGravel) { PaintAddImageAsParentRotated(session, direction, imageId, 0, 6, 32, 20, 2, height, 0, 6, height); @@ -686,7 +686,7 @@ static void paint_miniature_railway_track_flat( imageIdAlt = miniature_railway_track_to_grooved(imageId); PaintAddImageAsParentRotated(session, direction, imageIdAlt, 0, 6, 32, 20, 2, height, 0, 6, height + 2); imageIdAlt = miniature_railway_track_to_grooved_indent( - imageId, session->PathElementOnSameHeight, direction, session->CurrentRotation); + imageId, session.PathElementOnSameHeight, direction, session.CurrentRotation); PaintAddImageAsParentRotated( session, direction, (imageIdAlt & 0x7FFFF) | IMAGE_TYPE_REMAP | IMAGE_TYPE_TRANSPARENT @@ -703,17 +703,17 @@ static void paint_miniature_railway_track_flat( /** rct2: 0x008AD170, 0x008AD180, 0x008AD190 */ static void paint_miniature_railway_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); - imageId = miniature_railway_station_floor[direction] | session->TrackColours[SCHEME_MISC]; + imageId = miniature_railway_station_floor[direction] | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 28, 2, height - 2, 0, 2, height); - imageId = miniature_railway_track_pieces_flat_station[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_flat_station[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChildRotated(session, direction, imageId, 0, 6, 32, 20, 2, height, 0, 0, height); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_FLAT); @@ -727,10 +727,10 @@ static void paint_miniature_railway_station( /** rct2: 0x008AD0D0 */ static void paint_miniature_railway_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = miniature_railway_track_pieces_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = miniature_railway_track_pieces_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 2, height, 0, 3, height); @@ -750,7 +750,7 @@ static void paint_miniature_railway_track_25_deg_up( break; } - wooden_a_supports_paint_setup(session, direction & 1, 45 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 45 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 56, 0x20); @@ -758,10 +758,10 @@ static void paint_miniature_railway_track_25_deg_up( /** rct2: 0x008AD0E0 */ static void paint_miniature_railway_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = miniature_railway_track_pieces_flat_to_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = miniature_railway_track_pieces_flat_to_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 2, height, 0, 3, height); @@ -781,7 +781,7 @@ static void paint_miniature_railway_track_flat_to_25_deg_up( break; } - wooden_a_supports_paint_setup(session, direction & 1, 37 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 37 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 48, 0x20); @@ -789,10 +789,10 @@ static void paint_miniature_railway_track_flat_to_25_deg_up( /** rct2: 0x008AD0F0 */ static void paint_miniature_railway_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = miniature_railway_track_pieces_25_deg_up_to_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = miniature_railway_track_pieces_25_deg_up_to_flat[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 2, 32, 25, 2, height, 0, 3, height); @@ -812,7 +812,7 @@ static void paint_miniature_railway_track_25_deg_up_to_flat( break; } - wooden_a_supports_paint_setup(session, direction & 1, 41 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 41 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 40, 0x20); @@ -820,7 +820,7 @@ static void paint_miniature_railway_track_25_deg_up_to_flat( /** rct2: 0x008AD100 */ static void paint_miniature_railway_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_miniature_railway_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -828,7 +828,7 @@ static void paint_miniature_railway_track_25_deg_down( /** rct2: 0x008AD110 */ static void paint_miniature_railway_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_miniature_railway_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -836,7 +836,7 @@ static void paint_miniature_railway_track_flat_to_25_deg_down( /** rct2: 0x008AD120 */ static void paint_miniature_railway_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_miniature_railway_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -979,33 +979,33 @@ static constexpr const int8_t miniature_railway_right_quarter_turn_5_tiles_sprit /** rct2: 0x008AD140 */ static void paint_miniature_railway_track_right_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (right_quarter_turn_5_supports_type[direction][trackSequence] != -1) { bool isSupported = wooden_a_supports_paint_setup( session, right_quarter_turn_5_supports_type[direction][trackSequence], 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); if (!isSupported || (trackSequence == 3 && direction == 2)) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 2, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 2, height, direction, trackSequence, session.TrackColours[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, nullptr); } else { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 2, height, direction, trackSequence, session->TrackColours[SCHEME_SUPPORTS], + session, 2, height, direction, trackSequence, session.TrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_5_tiles_track_floor, nullptr, miniature_railway_right_quarter_turn_5_tiles_bound_lengths, miniature_railway_right_quarter_turn_5_tiles_bound_offsets); int32_t index = miniature_railway_right_quarter_turn_5_tiles_sprite_map[trackSequence]; uint32_t imageId = miniature_railway_track_pieces_flat_quarter_turn_5_tiles[direction][index] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = miniature_railway_right_quarter_turn_5_tiles_offsets[direction][index]; CoordsXY boundsLength = miniature_railway_right_quarter_turn_5_tiles_bound_lengths[direction][index]; CoordsXYZ boundsOffset = CoordsXYZ(offset, 0); @@ -1068,7 +1068,7 @@ static void paint_miniature_railway_track_right_quarter_turn_5_tiles( /** rct2: 0x008AD130 */ static void paint_miniature_railway_track_left_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1100,7 +1100,7 @@ static constexpr const uint32_t miniature_railway_s_bend_left_tiles_track_floor[ /** rct2: 0x8AD150 */ static void paint_miniature_railway_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -1109,7 +1109,7 @@ static void paint_miniature_railway_track_s_bend_left( } bool isSupported = wooden_a_supports_paint_setup( - session, s_bend_left_supports_type[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, s_bend_left_supports_type[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); static constexpr const CoordsXY offsetList[] = { { 0, 2 }, @@ -1126,7 +1126,7 @@ static void paint_miniature_railway_track_s_bend_left( }; uint32_t imageId = miniature_railway_track_pieces_s_bend_left[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; @@ -1139,12 +1139,11 @@ static void paint_miniature_railway_track_s_bend_left( else { imageId = miniature_railway_s_bend_left_tiles_track_floor[direction & 1][trackSequence] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParentRotated( session, direction, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height); - imageId = miniature_railway_track_pieces_s_bend_left[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_s_bend_left[direction & 1][trackSequence] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChildRotated( session, direction, imageId, static_cast(offset.x), static_cast(offset.y), bounds.x, bounds.y, 2, height, offset.x, offset.y, height); @@ -1209,7 +1208,7 @@ static constexpr const uint32_t miniature_railway_s_bend_right_tiles_track_floor /** rct2: 0x008AD160 */ static void paint_miniature_railway_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -1218,7 +1217,7 @@ static void paint_miniature_railway_track_s_bend_right( } bool isSupported = wooden_a_supports_paint_setup( - session, s_bend_right_supports_type[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, s_bend_right_supports_type[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); static constexpr const CoordsXY offsetList[] = { { 0, 2 }, @@ -1235,7 +1234,7 @@ static void paint_miniature_railway_track_s_bend_right( }; uint32_t imageId = miniature_railway_track_pieces_s_bend_right[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; if (!isSupported) @@ -1247,12 +1246,12 @@ static void paint_miniature_railway_track_s_bend_right( else { imageId = miniature_railway_s_bend_right_tiles_track_floor[direction & 1][trackSequence] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; PaintAddImageAsParentRotated( session, direction, imageId, 0, 0, bounds.x, bounds.y, 2, height, offset.x, offset.y, height); imageId = miniature_railway_track_pieces_s_bend_right[direction & 1][trackSequence] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChildRotated( session, direction, imageId, static_cast(offset.x), static_cast(offset.y), bounds.x, bounds.y, 2, height, offset.x, offset.y, height); @@ -1342,7 +1341,7 @@ static constexpr const CoordsXYZ miniature_railway_right_quarter_turn_3_tile_bou /** rct2: 0x008AD1B0 */ static void paint_miniature_railway_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isSupported = false; @@ -1350,26 +1349,26 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles( { static constexpr const uint8_t supportType[] = { 4, 5, 2, 3 }; isSupported = wooden_a_supports_paint_setup( - session, supportType[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); } if (!isSupported) { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], miniature_railway_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, nullptr); // The following piece was missing in vanilla RCT2 if (trackSequence == 1 && direction == 0) { - uint32_t imageId = SPR_G2_MINIATURE_RAILWAY_QUARTER_TURN_3_TILES_SW_SE_PART_3 | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SPR_G2_MINIATURE_RAILWAY_QUARTER_TURN_3_TILES_SW_SE_PART_3 | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 8, 8, 2 }, { 0, 0, height }); } } else { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_SUPPORTS], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_SUPPORTS], miniature_railway_right_quarter_turn_3_tile_track_floor, nullptr, defaultRightQuarterTurn3TilesBoundLengths, miniature_railway_right_quarter_turn_3_tile_bound_offsets); @@ -1378,7 +1377,7 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles( int32_t index = _right_quarter_turn_3_tiles_sprite_map[trackSequence]; uint32_t imageId = miniature_railway_track_pieces_flat_quarter_turn_3_tiles[direction][index] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = defaultRightQuarterTurn3TilesOffsets[direction][index]; CoordsXY boundsLength = defaultRightQuarterTurn3TilesBoundLengths[direction][index]; CoordsXYZ boundsOffset(offset, 0); @@ -1408,7 +1407,7 @@ static void paint_miniature_railway_track_right_quarter_turn_3_tiles( /** rct2: 0x008AD1A0 */ static void paint_miniature_railway_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1515,7 +1514,7 @@ static constexpr const CoordsXY miniature_railway_track_floor_pieces_left_eight_ /** rct2: 0x008AD1C0 */ static void paint_miniature_railway_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t supportType[4][5] = { @@ -1532,7 +1531,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag( if (trackSequence != 4 || !isRightEighthToOrthog) { isSupported = wooden_a_supports_paint_setup( - session, supportType[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); } uint32_t imageId; if (!isSupported) @@ -1540,7 +1539,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag( int8_t index = paint_miniature_railway_eighth_to_diag_index[trackSequence]; if (index >= 0) { - imageId = miniature_railway_track_pieces_left_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_left_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = miniature_railway_track_pieces_left_eight_to_diag_offset[direction][index]; CoordsXYZ bounds = miniature_railway_track_pieces_left_eight_to_diag_bounds[direction][index]; if (isRightEighthToOrthog) @@ -1554,7 +1553,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag( else { imageId = miniature_railway_floor_track_pieces_left_eight_to_diag[direction][trackSequence] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; CoordsXY offset = miniature_railway_track_floor_pieces_left_eight_to_diag_offset[direction][trackSequence]; CoordsXYZ bounds = miniature_railway_track_floor_pieces_left_eight_to_diag_bounds[direction][trackSequence]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, bounds, { offset, height }); @@ -1562,7 +1561,7 @@ static void paint_miniature_railway_track_left_eighth_to_diag( int8_t index = paint_miniature_railway_eighth_to_diag_index[trackSequence]; if (index >= 0) { - imageId = miniature_railway_track_pieces_left_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_left_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; offset = miniature_railway_track_pieces_left_eight_to_diag_offset[direction][index]; bounds = miniature_railway_track_pieces_left_eight_to_diag_bounds[direction][index]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, bounds, { offset, height }); @@ -1677,7 +1676,7 @@ static constexpr const CoordsXY miniature_railway_track_floor_pieces_right_eight /** rct2: 0x008AD1D0 */ static void paint_miniature_railway_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t supportType[4][5] = { @@ -1694,7 +1693,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag( if (trackSequence != 4 || !isLeftEighthToOrthog) { isSupported = wooden_a_supports_paint_setup( - session, supportType[direction][trackSequence], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, supportType[direction][trackSequence], 0, height, session.TrackColours[SCHEME_SUPPORTS]); } uint32_t imageId; @@ -1703,8 +1702,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag( int8_t index = paint_miniature_railway_eighth_to_diag_index[trackSequence]; if (index >= 0) { - imageId = miniature_railway_track_pieces_right_eight_to_diag[direction][index] - | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_right_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = miniature_railway_track_pieces_right_eight_to_diag_offset[direction][index]; CoordsXYZ bounds = miniature_railway_track_pieces_right_eight_to_diag_bounds[direction][index]; if (isLeftEighthToOrthog) @@ -1718,7 +1716,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag( else { imageId = miniature_railway_floor_track_pieces_right_eight_to_diag[direction][trackSequence] - | session->TrackColours[SCHEME_SUPPORTS]; + | session.TrackColours[SCHEME_SUPPORTS]; CoordsXY offset = miniature_railway_track_floor_pieces_right_eight_to_diag_offset[direction][trackSequence]; CoordsXYZ bounds = miniature_railway_track_floor_pieces_right_eight_to_diag_bounds[direction][trackSequence]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, bounds, { offset, height }); @@ -1726,8 +1724,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag( int8_t index = paint_miniature_railway_eighth_to_diag_index[trackSequence]; if (index >= 0) { - imageId = miniature_railway_track_pieces_right_eight_to_diag[direction][index] - | session->TrackColours[SCHEME_TRACK]; + imageId = miniature_railway_track_pieces_right_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; offset = miniature_railway_track_pieces_right_eight_to_diag_offset[direction][index]; bounds = miniature_railway_track_pieces_right_eight_to_diag_bounds[direction][index]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, bounds, { offset, height }); @@ -1749,7 +1746,7 @@ static void paint_miniature_railway_track_right_eighth_to_diag( /** rct2: 0x008AD1E0 */ static void paint_miniature_railway_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1758,7 +1755,7 @@ static void paint_miniature_railway_track_left_eighth_to_orthogonal( /** rct2: 0x008AD1F0 */ static void paint_miniature_railway_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1807,7 +1804,7 @@ static constexpr const floor_desc floors[] = { /** rct2: 0x008AD200 */ static void miniature_railway_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isSupported = false; @@ -1822,7 +1819,7 @@ static void miniature_railway_track_diag_flat( floorImage = floors[supportType].image_id; floorBoundSize = floors[supportType].bound_size; floorBoundOffset = floors[supportType].bound_offset; - isSupported = wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + isSupported = wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -1836,19 +1833,19 @@ static void miniature_railway_track_diag_flat( if (isSupported) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -1862,7 +1859,7 @@ enum }; static bool wooden_supports_paint_setup( - paint_session* session, int32_t woodType, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) + paint_session& session, int32_t woodType, int32_t supportType, int32_t special, int32_t height, uint32_t imageColourFlags) { switch (woodType) { @@ -1878,7 +1875,7 @@ static bool wooden_supports_paint_setup( /** rct2: 0x008AD230 */ static void miniature_railway_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { // TODO: The supports are inconsistent for different rotations @@ -1909,7 +1906,7 @@ static void miniature_railway_track_diag_25_deg_up( floorBoundSize = floors[supportType].bound_size; floorBoundOffset = floors[supportType].bound_offset; hasSupports = wooden_supports_paint_setup( - session, supportFunction, supportType, 0, height + heightDiff, session->TrackColours[SCHEME_SUPPORTS]); + session, supportFunction, supportType, 0, height + heightDiff, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -1935,20 +1932,20 @@ static void miniature_railway_track_diag_25_deg_up( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height + offsetsB[direction][trackSequence][0] }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height + offsetsB[direction][trackSequence][1] }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + offsetB[direction] }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + offsetB[direction] }); } @@ -1958,7 +1955,7 @@ static void miniature_railway_track_diag_25_deg_up( /** rct2: 0x008AD210 */ static void miniature_railway_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool hasSupports = false; @@ -1973,7 +1970,7 @@ static void miniature_railway_track_diag_flat_to_25_deg_up( floorImage = floors[supportType].image_id; floorBoundSize = floors[supportType].bound_size; floorBoundOffset = floors[supportType].bound_offset; - hasSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + hasSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -1987,19 +1984,19 @@ static void miniature_railway_track_diag_flat_to_25_deg_up( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -2008,7 +2005,7 @@ static void miniature_railway_track_diag_flat_to_25_deg_up( /** rct2: 0x008AD220 */ static void miniature_railway_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t supportOffsets[][4] = { @@ -2038,7 +2035,7 @@ static void miniature_railway_track_diag_25_deg_up_to_flat( floorBoundOffset = floors[supportType].bound_offset; hasSupports = wooden_supports_paint_setup( session, supportFunction, supportType, 0, height + supportOffsets[direction][trackSequence], - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -2061,20 +2058,20 @@ static void miniature_railway_track_diag_25_deg_up_to_flat( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height + offsetsB[direction][trackSequence][0] }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height + offsetsB[direction][trackSequence][1] }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } @@ -2084,7 +2081,7 @@ static void miniature_railway_track_diag_25_deg_up_to_flat( /** rct2: 0x008AD260 */ static void miniature_railway_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t supportOffsets[][4] = { @@ -2114,7 +2111,7 @@ static void miniature_railway_track_diag_25_deg_down( floorBoundOffset = floors[supportType].bound_offset; hasSupports = wooden_supports_paint_setup( session, supportFunction, supportType, 0, height + supportOffsets[direction][trackSequence], - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -2136,20 +2133,20 @@ static void miniature_railway_track_diag_25_deg_down( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height + offsetsB[direction][trackSequence][0] }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height + offsetsB[direction][trackSequence][1] }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } @@ -2159,7 +2156,7 @@ static void miniature_railway_track_diag_25_deg_down( /** rct2: 0x008AD240 */ static void miniature_railway_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr int8_t supportOffsets[][4] = { @@ -2188,7 +2185,7 @@ static void miniature_railway_track_diag_flat_to_25_deg_down( floorBoundOffset = floors[supportType].bound_offset; hasSupports = wooden_supports_paint_setup( session, supportFunction, supportType, 0, height + supportOffsets[direction][trackSequence], - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -2210,20 +2207,20 @@ static void miniature_railway_track_diag_flat_to_25_deg_down( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height + offsetsB[direction][trackSequence][0] }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height + offsetsB[direction][trackSequence][1] }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height + railOffsets[direction] }); } @@ -2232,7 +2229,7 @@ static void miniature_railway_track_diag_flat_to_25_deg_down( } static void miniature_railway_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool hasSupports = false; @@ -2246,7 +2243,7 @@ static void miniature_railway_track_diag_25_deg_down_to_flat( floorImage = floors[supportType].image_id; floorBoundSize = floors[supportType].bound_size; floorBoundOffset = floors[supportType].bound_offset; - hasSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + hasSupports = wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 1 && trackSequence == 3) @@ -2260,19 +2257,19 @@ static void miniature_railway_track_diag_25_deg_down_to_flat( if (hasSupports) { PaintAddImageAsParent( - session, floorImage | session->TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, + session, floorImage | session.TrackColours[SCHEME_SUPPORTS], { 0, 0, height }, { floorBoundSize, (drawRail ? 2 : 0) }, { floorBoundOffset, height }); if (drawRail) { PaintAddImageAsChild( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } } else if (drawRail) { PaintAddImageAsParent( - session, imageId | session->TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); + session, imageId | session.TrackColours[SCHEME_TRACK], { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); diff --git a/src/openrct2/ride/transport/Monorail.cpp b/src/openrct2/ride/transport/Monorail.cpp index 548e7470ed..1958892f7a 100644 --- a/src/openrct2/ride/transport/Monorail.cpp +++ b/src/openrct2/ride/transport/Monorail.cpp @@ -436,10 +436,10 @@ static constexpr const uint32_t monorail_track_pieces_diag_25_deg_up[4] = { /** rct2: 0x008AE1AC */ static void paint_monorail_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = monorail_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -459,9 +459,9 @@ static void paint_monorail_track_flat( paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -471,7 +471,7 @@ static void paint_monorail_track_flat( /** rct2: 0x008AE25C, 0x008AE26C, 0x008AE27C */ static void paint_monorail_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -483,17 +483,17 @@ static void paint_monorail_station( { if (direction == 0 || direction == 2) { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height }); } else if (direction == 1 || direction == 3) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 2 }, { 2, 0, height }); } } - imageId = monorail_track_pieces_flat[direction] | session->TrackColours[SCHEME_TRACK]; + imageId = monorail_track_pieces_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { PaintAddImageAsChild(session, imageId, 0, 6, 32, 20, 2, height, 0, 0, height); @@ -514,13 +514,13 @@ static void paint_monorail_station( if (direction == 0 || direction == 2) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } track_paint_util_draw_station(session, ride, direction, height, trackElement); @@ -531,10 +531,10 @@ static void paint_monorail_station( /** rct2: 0x008AE1BC */ static void paint_monorail_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = monorail_track_pieces_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -561,9 +561,9 @@ static void paint_monorail_track_25_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -573,10 +573,10 @@ static void paint_monorail_track_25_deg_up( /** rct2: 0x008AE1CC */ static void paint_monorail_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = monorail_track_pieces_flat_to_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_flat_to_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -603,9 +603,9 @@ static void paint_monorail_track_flat_to_25_deg_up( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -615,10 +615,10 @@ static void paint_monorail_track_flat_to_25_deg_up( /** rct2: 0x008AE1DC */ static void paint_monorail_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = monorail_track_pieces_25_deg_up_to_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_25_deg_up_to_flat[direction] | session.TrackColours[SCHEME_TRACK]; if (direction == 0 || direction == 2) { @@ -645,9 +645,9 @@ static void paint_monorail_track_25_deg_up_to_flat( break; } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -657,7 +657,7 @@ static void paint_monorail_track_25_deg_up_to_flat( /** rct2: 0x008AE1EC */ static void paint_monorail_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_monorail_track_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -665,7 +665,7 @@ static void paint_monorail_track_25_deg_down( /** rct2: 0x008AE1FC */ static void paint_monorail_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_monorail_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -673,7 +673,7 @@ static void paint_monorail_track_flat_to_25_deg_down( /** rct2: 0x008AE20C */ static void paint_monorail_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_monorail_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -681,11 +681,11 @@ static void paint_monorail_track_25_deg_down_to_flat( /** rct2: 0x008AE22C */ static void paint_monorail_track_right_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_5_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_5_tiles, defaultRightQuarterTurn5TilesOffsets, defaultRightQuarterTurn5TilesBoundLengths, nullptr); @@ -693,7 +693,7 @@ static void paint_monorail_track_right_quarter_turn_5_tiles( { case 0: case 6: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -744,7 +744,7 @@ static void paint_monorail_track_right_quarter_turn_5_tiles( /** rct2: 0x008AE21C */ static void paint_monorail_track_left_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -753,7 +753,7 @@ static void paint_monorail_track_left_quarter_turn_5_tiles( /** rct2: 0x */ static void paint_monorail_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -775,7 +775,7 @@ static void paint_monorail_track_s_bend_left( { 32, 20 }, }; - uint32_t imageId = monorail_track_pieces_s_bend_left[direction & 1][trackSequence] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_s_bend_left[direction & 1][trackSequence] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; if (direction == 0 || direction == 2) @@ -798,15 +798,15 @@ static void paint_monorail_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -821,15 +821,15 @@ static void paint_monorail_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -857,7 +857,7 @@ static void paint_monorail_track_s_bend_left( /** rct2: 0x008AE24C */ static void paint_monorail_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction == 2 || direction == 3) @@ -879,7 +879,7 @@ static void paint_monorail_track_s_bend_right( { 32, 20 }, }; - uint32_t imageId = monorail_track_pieces_s_bend_right[direction & 1][trackSequence] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_s_bend_right[direction & 1][trackSequence] | session.TrackColours[SCHEME_TRACK]; CoordsXY offset = offsetList[trackSequence]; CoordsXY bounds = boundsList[trackSequence]; if (direction == 0 || direction == 2) @@ -902,15 +902,15 @@ static void paint_monorail_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -925,15 +925,15 @@ static void paint_monorail_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -961,11 +961,11 @@ static void paint_monorail_track_s_bend_right( /** rct2: 0x008AE29C */ static void paint_monorail_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_3_tiles_paint( - session, 3, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], monorail_track_pieces_flat_quarter_turn_3_tiles, defaultRightQuarterTurn3TilesOffsets, defaultRightQuarterTurn3TilesBoundLengths, nullptr); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_SQUARE_FLAT); @@ -974,7 +974,7 @@ static void paint_monorail_track_right_quarter_turn_3_tiles( { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -998,7 +998,7 @@ static void paint_monorail_track_right_quarter_turn_3_tiles( /** rct2: 0x008AE28C */ static void paint_monorail_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1011,13 +1011,13 @@ static constexpr const int8_t paint_monorail_eighth_to_diag_index[] = { /** rct2: 0x008AE31C */ static void paint_monorail_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { int8_t index = paint_monorail_eighth_to_diag_index[trackSequence]; if (index >= 0) { - uint32_t imageId = ghost_train_track_pieces_left_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_left_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; const CoordsXY offset = ghost_train_track_pieces_left_eight_to_diag_offset[direction][index]; const CoordsXY bounds = ghost_train_track_pieces_left_eight_to_diag_bounds[direction][index]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { bounds.x, bounds.y, 2 }, { offset.x, offset.y, height }); @@ -1026,21 +1026,21 @@ static void paint_monorail_track_left_eighth_to_diag( switch (trackSequence) { case 0: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1079,13 +1079,13 @@ static void paint_monorail_track_left_eighth_to_diag( /** rct2: 0x008AE32C */ static void paint_monorail_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { int8_t index = paint_monorail_eighth_to_diag_index[trackSequence]; if (index >= 0) { - uint32_t imageId = ghost_train_track_pieces_right_eight_to_diag[direction][index] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = ghost_train_track_pieces_right_eight_to_diag[direction][index] | session.TrackColours[SCHEME_TRACK]; const CoordsXY offset = ghost_train_track_pieces_right_eight_to_diag_offset[direction][index]; const CoordsXY bounds = ghost_train_track_pieces_right_eight_to_diag_bounds[direction][index]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { bounds.x, bounds.y, 2 }, { offset.x, offset.y, height }); @@ -1094,21 +1094,21 @@ static void paint_monorail_track_right_eighth_to_diag( switch (trackSequence) { case 0: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; case 4: if (direction == 0) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 1) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 2) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 3) metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1147,7 +1147,7 @@ static void paint_monorail_track_right_eighth_to_diag( /** rct2: 0x008AE33C */ static void paint_monorail_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -1157,7 +1157,7 @@ static void paint_monorail_track_left_eighth_to_orthogonal( /** rct2: 0x008AE34C */ static void paint_monorail_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr uint8_t map[] = { 4, 2, 3, 1, 0 }; @@ -1188,12 +1188,12 @@ static constexpr const int32_t monorail_diag_blocked_segments[] = { /** rct2: 0x008AE2AC */ static void paint_monorail_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { - uint32_t imageId = monorail_track_pieces_diag_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_diag_flat[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1201,7 +1201,7 @@ static void paint_monorail_track_diag_flat( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1211,12 +1211,12 @@ static void paint_monorail_track_diag_flat( /** rct2: 0x008AE2DC */ static void paint_monorail_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { - uint32_t imageId = monorail_track_pieces_diag_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_diag_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1224,7 +1224,7 @@ static void paint_monorail_track_diag_25_deg_up( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 8, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1234,12 +1234,12 @@ static void paint_monorail_track_diag_25_deg_up( /** rct2: 0x008AE2BC */ static void paint_monorail_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { - uint32_t imageId = monorail_track_pieces_diag_flat_to_25_deg_up[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_diag_flat_to_25_deg_up[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1247,7 +1247,7 @@ static void paint_monorail_track_diag_flat_to_25_deg_up( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1257,12 +1257,12 @@ static void paint_monorail_track_diag_flat_to_25_deg_up( /** rct2: 0x008AE2CC */ static void paint_monorail_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { - uint32_t imageId = monorail_track_pieces_diag_25_deg_up_to_flat[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_diag_25_deg_up_to_flat[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1270,7 +1270,7 @@ static void paint_monorail_track_diag_25_deg_up_to_flat( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 4, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1280,12 +1280,12 @@ static void paint_monorail_track_diag_25_deg_up_to_flat( /** rct2: 0x008AE30C */ static void paint_monorail_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { - uint32_t imageId = monorail_track_pieces_diag_25_deg_up[(direction + 2) % 4] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = monorail_track_pieces_diag_25_deg_up[(direction + 2) % 4] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1293,7 +1293,7 @@ static void paint_monorail_track_diag_25_deg_down( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 8, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1303,13 +1303,13 @@ static void paint_monorail_track_diag_25_deg_down( /** rct2: 0x008AE2EC */ static void paint_monorail_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { uint32_t imageId = monorail_track_pieces_diag_25_deg_up_to_flat[(direction + 2) % 4] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1317,7 +1317,7 @@ static void paint_monorail_track_diag_flat_to_25_deg_down( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 4, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; @@ -1327,13 +1327,13 @@ static void paint_monorail_track_diag_flat_to_25_deg_down( /** rct2: 0x008AE2FC */ static void paint_monorail_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (monorail_diag_image_segment[direction][trackSequence]) { uint32_t imageId = monorail_track_pieces_diag_flat_to_25_deg_up[(direction + 2) % 4] - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height }); } @@ -1341,7 +1341,7 @@ static void paint_monorail_track_diag_25_deg_down_to_flat( { metal_b_supports_paint_setup( session, METAL_SUPPORTS_BOXED, monorail_diag_support_segment[direction], 0, height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } int32_t blockedSegments = monorail_diag_blocked_segments[trackSequence]; diff --git a/src/openrct2/ride/transport/SuspendedMonorail.cpp b/src/openrct2/ride/transport/SuspendedMonorail.cpp index 93a304af2d..994dfd9c82 100644 --- a/src/openrct2/ride/transport/SuspendedMonorail.cpp +++ b/src/openrct2/ride/transport/SuspendedMonorail.cpp @@ -21,7 +21,7 @@ /** rct2: 0x008636F4 */ static void suspended_monorail_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -29,22 +29,22 @@ static void suspended_monorail_track_flat( case 0: case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25853, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25853, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25854, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25854, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); @@ -53,7 +53,7 @@ static void suspended_monorail_track_flat( /** rct2: 0x008637A4, 0x008637B4, 0x008637C4 */ static void suspended_monorail_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -64,14 +64,14 @@ static void suspended_monorail_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 28, 1, height, 0, 2, height); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); PaintAddImageAsChildRotated( - session, direction, imageIds[direction][2] | session->TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 32, 0, 6, + session, direction, imageIds[direction][2] | session.TrackColours[SCHEME_SUPPORTS], 0, 6, 32, 20, 3, height + 32, 0, 6, height + 32); - track_paint_util_draw_station_metal_supports_2(session, direction, height, session->TrackColours[SCHEME_SUPPORTS], 3); + track_paint_util_draw_station_metal_supports_2(session, direction, height, session.TrackColours[SCHEME_SUPPORTS], 3); track_paint_util_draw_station_inverted(session, ride, direction, height, trackElement, STATION_VARIANT_TALL); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_SQUARE_INVERTED_9); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -80,54 +80,54 @@ static void suspended_monorail_track_station( /** rct2: 0x00863704 */ static void suspended_monorail_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25945, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25945, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 48); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25946, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25946, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 48); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25947, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25947, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 48); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25948, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25948, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 48); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 60, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 60, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 60, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 60, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 60, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 60, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 60, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 60, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -145,54 +145,54 @@ static void suspended_monorail_track_25_deg_up( /** rct2: 0x00863714 */ static void suspended_monorail_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25937, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25937, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25938, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25938, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25939, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25939, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25940, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25940, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 52, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -210,54 +210,54 @@ static void suspended_monorail_track_flat_to_25_deg_up( /** rct2: 0x00863724 */ static void suspended_monorail_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25941, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25941, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25942, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25942, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25943, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25943, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25944, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25944, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 40); break; } paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { switch (direction) { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } } @@ -275,7 +275,7 @@ static void suspended_monorail_track_25_deg_up_to_flat( /** rct2: 0x00863734 */ static void suspended_monorail_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_monorail_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -283,7 +283,7 @@ static void suspended_monorail_track_25_deg_down( /** rct2: 0x00863744 */ static void suspended_monorail_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_monorail_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -291,7 +291,7 @@ static void suspended_monorail_track_flat_to_25_deg_down( /** rct2: 0x00863754 */ static void suspended_monorail_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { suspended_monorail_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); @@ -299,7 +299,7 @@ static void suspended_monorail_track_25_deg_down_to_flat( /** rct2: 0x00863764 */ static void suspended_monorail_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -309,22 +309,22 @@ static void suspended_monorail_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25876, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25876, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25881, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25881, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25886, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25886, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25871, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25871, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -333,7 +333,7 @@ static void suspended_monorail_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -349,20 +349,20 @@ static void suspended_monorail_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25875, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25875, 0, 0, 32, 16, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25880, 0, 0, 32, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25880, 0, 0, 32, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25885, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25885, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25870, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25870, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; } @@ -378,22 +378,22 @@ static void suspended_monorail_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25874, 0, 0, 16, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25874, 0, 0, 16, 16, 3, height + 32, 0, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25879, 0, 0, 16, 16, 3, height + 32, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25879, 0, 0, 16, 16, 3, height + 32, 16, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25884, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25884, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25869, 0, 0, 16, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25869, 0, 0, 16, 16, 3, height + 32); break; } paint_util_set_segment_support_height( @@ -408,20 +408,20 @@ static void suspended_monorail_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25873, 0, 0, 16, 32, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25873, 0, 0, 16, 32, 3, height + 32, 16, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25878, 0, 0, 16, 32, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25878, 0, 0, 16, 32, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25883, 0, 0, 16, 32, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25883, 0, 0, 16, 32, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25868, 0, 0, 16, 32, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25868, 0, 0, 16, 32, 3, height + 32, 16, 0, height + 32); break; } @@ -437,22 +437,22 @@ static void suspended_monorail_track_left_quarter_turn_5( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25872, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25872, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25877, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25877, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25882, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25882, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25867, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25867, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; } @@ -461,7 +461,7 @@ static void suspended_monorail_track_left_quarter_turn_5( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -479,7 +479,7 @@ static void suspended_monorail_track_left_quarter_turn_5( /** rct2: 0x00863774 */ static void suspended_monorail_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -488,7 +488,7 @@ static void suspended_monorail_track_right_quarter_turn_5( /** rct2: 0x00863784 */ static void suspended_monorail_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -498,22 +498,22 @@ static void suspended_monorail_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25919, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25919, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25923, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25923, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25922, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25922, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25926, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25926, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -521,7 +521,7 @@ static void suspended_monorail_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -534,20 +534,20 @@ static void suspended_monorail_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25920, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25920, 0, 0, 32, 26, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25924, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25924, 0, 0, 32, 26, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25921, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25921, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25925, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25925, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; } @@ -561,11 +561,11 @@ static void suspended_monorail_track_s_bend_left( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -576,21 +576,21 @@ static void suspended_monorail_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25921, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25921, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25925, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25925, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25920, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25920, 0, 0, 32, 26, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25924, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25924, 0, 0, 32, 26, 3, height + 32); break; } @@ -603,11 +603,11 @@ static void suspended_monorail_track_s_bend_left( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 5, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 5, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 6, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 6, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -618,22 +618,22 @@ static void suspended_monorail_track_s_bend_left( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25922, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25922, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25926, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25926, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25919, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25919, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25923, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25923, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -641,7 +641,7 @@ static void suspended_monorail_track_s_bend_left( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -659,7 +659,7 @@ static void suspended_monorail_track_s_bend_left( /** rct2: 0x00863794 */ static void suspended_monorail_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -669,22 +669,22 @@ static void suspended_monorail_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25927, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25927, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25931, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25931, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25930, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25930, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25934, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25934, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -692,7 +692,7 @@ static void suspended_monorail_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -705,21 +705,21 @@ static void suspended_monorail_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25928, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25928, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25932, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25932, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25929, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25929, 0, 0, 32, 26, 3, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25933, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25933, 0, 0, 32, 26, 3, height + 32); break; } @@ -732,11 +732,11 @@ static void suspended_monorail_track_s_bend_right( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -747,20 +747,20 @@ static void suspended_monorail_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25929, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25929, 0, 0, 32, 26, 3, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25933, 0, 0, 32, 26, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25933, 0, 0, 32, 26, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25928, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25928, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25932, 0, 0, 32, 26, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25932, 0, 0, 32, 26, 3, height + 32, 0, 6, height + 32); break; } @@ -774,11 +774,11 @@ static void suspended_monorail_track_s_bend_right( { case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 7, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 7, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -789,22 +789,22 @@ static void suspended_monorail_track_s_bend_right( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25930, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25930, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25934, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25934, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25927, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25927, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25931, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25931, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -812,7 +812,7 @@ static void suspended_monorail_track_s_bend_right( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -830,7 +830,7 @@ static void suspended_monorail_track_s_bend_right( /** rct2: 0x008637D4 */ static void suspended_monorail_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -840,22 +840,22 @@ static void suspended_monorail_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25860, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25860, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25863, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25863, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25866, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25866, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25857, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25857, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -864,7 +864,7 @@ static void suspended_monorail_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -880,21 +880,21 @@ static void suspended_monorail_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25859, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25859, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25862, 0, 0, 16, 16, 3, height + 32); + session, direction, session.TrackColours[SCHEME_TRACK] | 25862, 0, 0, 16, 16, 3, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25865, 0, 0, 16, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25865, 0, 0, 16, 16, 3, height + 32, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25856, 0, 0, 16, 16, 3, height + 32, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25856, 0, 0, 16, 16, 3, height + 32, 16, 16, height + 32); break; } @@ -907,22 +907,22 @@ static void suspended_monorail_track_left_quarter_turn_3( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25858, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25858, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25861, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25861, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25864, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25864, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25855, 0, 0, 20, 32, 3, height + 32, 6, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25855, 0, 0, 20, 32, 3, height + 32, 6, 0, height + 32); break; } @@ -931,7 +931,7 @@ static void suspended_monorail_track_left_quarter_turn_3( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); switch (direction) { @@ -949,7 +949,7 @@ static void suspended_monorail_track_left_quarter_turn_3( /** rct2: 0x008637E4 */ static void suspended_monorail_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -958,7 +958,7 @@ static void suspended_monorail_track_right_quarter_turn_3( /** rct2: 0x00863864 */ static void suspended_monorail_track_left_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -968,22 +968,22 @@ static void suspended_monorail_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25903, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25903, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25907, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25907, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25911, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25911, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25915, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25915, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -991,7 +991,7 @@ static void suspended_monorail_track_left_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1004,22 +1004,22 @@ static void suspended_monorail_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25904, 0, 0, 32, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25904, 0, 0, 32, 16, 3, height + 32, 0, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25908, 0, 0, 34, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25908, 0, 0, 34, 16, 3, height + 32, 0, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25912, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25912, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25916, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25916, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; } @@ -1035,22 +1035,22 @@ static void suspended_monorail_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25905, 0, 0, 16, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25905, 0, 0, 16, 16, 3, height + 32, 0, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25909, 0, 0, 16, 16, 3, height + 32, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25909, 0, 0, 16, 16, 3, height + 32, 16, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25913, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25913, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25917, 0, 0, 16, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25917, 0, 0, 16, 16, 3, height + 32, 0, 0, height + 32); break; } @@ -1069,22 +1069,22 @@ static void suspended_monorail_track_left_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25906, 0, 0, 16, 16, 3, height + 32, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25906, 0, 0, 16, 16, 3, height + 32, 16, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25910, 0, 0, 16, 18, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25910, 0, 0, 16, 18, 3, height + 32, 0, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25914, 0, 0, 16, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25914, 0, 0, 16, 16, 3, height + 32, 0, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25918, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25918, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; } @@ -1098,19 +1098,19 @@ static void suspended_monorail_track_left_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1121,7 +1121,7 @@ static void suspended_monorail_track_left_eighth_to_diag( /** rct2: 0x00863874 */ static void suspended_monorail_track_right_eighth_to_diag( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1131,22 +1131,22 @@ static void suspended_monorail_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25887, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25887, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25891, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25891, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25895, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25895, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25899, 0, 0, 32, 20, 3, height + 32, 0, 6, + session, direction, session.TrackColours[SCHEME_TRACK] | 25899, 0, 0, 32, 20, 3, height + 32, 0, 6, height + 32); break; } @@ -1154,7 +1154,7 @@ static void suspended_monorail_track_right_eighth_to_diag( paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 4, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -1167,22 +1167,22 @@ static void suspended_monorail_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25888, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25888, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25892, 0, 0, 32, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25892, 0, 0, 32, 16, 3, height + 32, 0, 16, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25896, 0, 0, 34, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25896, 0, 0, 34, 16, 3, height + 32, 0, 0, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25900, 0, 0, 32, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25900, 0, 0, 32, 16, 3, height + 32, 0, 0, height + 32); break; } @@ -1198,22 +1198,22 @@ static void suspended_monorail_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25889, 0, 0, 16, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25889, 0, 0, 16, 16, 3, height + 32, 0, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25893, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25893, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25897, 0, 0, 28, 28, 3, height + 32, 4, 4, + session, direction, session.TrackColours[SCHEME_TRACK] | 25897, 0, 0, 28, 28, 3, height + 32, 4, 4, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25901, 0, 0, 16, 16, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25901, 0, 0, 16, 16, 3, height + 32, 0, 16, height + 32); break; } @@ -1232,22 +1232,22 @@ static void suspended_monorail_track_right_eighth_to_diag( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25890, 0, 0, 16, 16, 3, height + 32, 16, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25890, 0, 0, 16, 16, 3, height + 32, 16, 0, height + 32); break; case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25894, 0, 0, 16, 16, 3, height + 32, 0, 0, + session, direction, session.TrackColours[SCHEME_TRACK] | 25894, 0, 0, 16, 16, 3, height + 32, 0, 0, height + 32); break; case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25898, 0, 0, 16, 18, 3, height + 32, 0, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25898, 0, 0, 16, 18, 3, height + 32, 0, 16, height + 32); break; case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25902, 0, 0, 16, 16, 3, height + 32, 16, 16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25902, 0, 0, 16, 16, 3, height + 32, 16, 16, height + 32); break; } @@ -1261,19 +1261,19 @@ static void suspended_monorail_track_right_eighth_to_diag( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1284,7 +1284,7 @@ static void suspended_monorail_track_right_eighth_to_diag( /** rct2: 0x00863884 */ static void suspended_monorail_track_left_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1293,7 +1293,7 @@ static void suspended_monorail_track_left_eighth_to_orthogonal( /** rct2: 0x00863894 */ static void suspended_monorail_track_right_eighth_to_orthogonal( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; @@ -1302,7 +1302,7 @@ static void suspended_monorail_track_right_eighth_to_orthogonal( /** rct2: 0x008637F4 */ static void suspended_monorail_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1312,7 +1312,7 @@ static void suspended_monorail_track_diag_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25936, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25936, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 32); break; } @@ -1325,7 +1325,7 @@ static void suspended_monorail_track_diag_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25935, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25935, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 32); break; } @@ -1338,7 +1338,7 @@ static void suspended_monorail_track_diag_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25935, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25935, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 32); break; } @@ -1351,7 +1351,7 @@ static void suspended_monorail_track_diag_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25936, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25936, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 32); break; } @@ -1362,19 +1362,19 @@ static void suspended_monorail_track_diag_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 42, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1385,7 +1385,7 @@ static void suspended_monorail_track_diag_flat( /** rct2: 0x00863824 */ static void suspended_monorail_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1395,7 +1395,7 @@ static void suspended_monorail_track_diag_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25960, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25960, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1408,7 +1408,7 @@ static void suspended_monorail_track_diag_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25957, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25957, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1421,7 +1421,7 @@ static void suspended_monorail_track_diag_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25959, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25959, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1434,7 +1434,7 @@ static void suspended_monorail_track_diag_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25958, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25958, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1445,19 +1445,19 @@ static void suspended_monorail_track_diag_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 55, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 55, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 57, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 57, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1468,7 +1468,7 @@ static void suspended_monorail_track_diag_25_deg_up( /** rct2: 0x00863804 */ static void suspended_monorail_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1478,7 +1478,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25952, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25952, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1491,7 +1491,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25949, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25949, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1504,7 +1504,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25951, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25951, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1517,7 +1517,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25950, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25950, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1528,19 +1528,19 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 50, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1551,7 +1551,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_up( /** rct2: 0x00863814 */ static void suspended_monorail_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1561,7 +1561,7 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25956, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25956, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1574,7 +1574,7 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25953, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25953, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1587,7 +1587,7 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25955, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25955, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1600,7 +1600,7 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25954, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25954, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1611,19 +1611,19 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1634,7 +1634,7 @@ static void suspended_monorail_track_diag_25_deg_up_to_flat( /** rct2: 0x00863854 */ static void suspended_monorail_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1644,7 +1644,7 @@ static void suspended_monorail_track_diag_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25958, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25958, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1657,7 +1657,7 @@ static void suspended_monorail_track_diag_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25959, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25959, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1670,7 +1670,7 @@ static void suspended_monorail_track_diag_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25957, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25957, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1683,7 +1683,7 @@ static void suspended_monorail_track_diag_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25960, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25960, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 48); break; } @@ -1694,19 +1694,19 @@ static void suspended_monorail_track_diag_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 54, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 54, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 51, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 51, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 58, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 58, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1717,7 +1717,7 @@ static void suspended_monorail_track_diag_25_deg_down( /** rct2: 0x00863834 */ static void suspended_monorail_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1727,7 +1727,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25954, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25954, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1739,7 +1739,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25955, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25955, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1751,7 +1751,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25953, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25953, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1763,7 +1763,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25956, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25956, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1774,19 +1774,19 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 48, session.TrackColours[SCHEME_SUPPORTS]); break; } break; @@ -1797,7 +1797,7 @@ static void suspended_monorail_track_diag_flat_to_25_deg_down( /** rct2: 0x00863844 */ static void suspended_monorail_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (trackSequence) @@ -1807,7 +1807,7 @@ static void suspended_monorail_track_diag_25_deg_down_to_flat( { case 3: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25950, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25950, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1820,7 +1820,7 @@ static void suspended_monorail_track_diag_25_deg_down_to_flat( { case 0: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25951, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25951, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1833,7 +1833,7 @@ static void suspended_monorail_track_diag_25_deg_down_to_flat( { case 2: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25949, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25949, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1846,7 +1846,7 @@ static void suspended_monorail_track_diag_25_deg_down_to_flat( { case 1: PaintAddImageAsParentRotated( - session, direction, session->TrackColours[SCHEME_TRACK] | 25952, -16, -16, 32, 32, 3, height + 32, -16, + session, direction, session.TrackColours[SCHEME_TRACK] | 25952, -16, -16, 32, 32, 3, height + 32, -16, -16, height + 40); break; } @@ -1857,19 +1857,19 @@ static void suspended_monorail_track_diag_25_deg_down_to_flat( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 1, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 1, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 1: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 0, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 0, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 2: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 2, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 2, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 3, 0, height + 46, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 3, 0, height + 46, session.TrackColours[SCHEME_SUPPORTS]); break; } diff --git a/src/openrct2/ride/water/BoatHire.cpp b/src/openrct2/ride/water/BoatHire.cpp index cfa075661b..0f36b8c8cf 100644 --- a/src/openrct2/ride/water/BoatHire.cpp +++ b/src/openrct2/ride/water/BoatHire.cpp @@ -32,7 +32,7 @@ enum /** rct2: 0x008B0E40 */ static void paint_boat_hire_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -40,18 +40,18 @@ static void paint_boat_hire_track_flat( const auto offset = CoordsXYZ{ 0, 0, height }; if (direction & 1) { - imageId = SPR_BOAT_HIRE_FLAT_BACK_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_BACK_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 1, 32, 3 }, { 4, 0, height }); - imageId = SPR_BOAT_HIRE_FLAT_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_FRONT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 1, 32, 3 }, { 28, 0, height }); } else { - imageId = SPR_BOAT_HIRE_FLAT_BACK_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_BACK_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 1, 3 }, { 0, 4, height }); - imageId = SPR_BOAT_HIRE_FLAT_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_FRONT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 1, 3 }, { 0, 28, height }); } @@ -62,7 +62,7 @@ static void paint_boat_hire_track_flat( /** rct2: 0x008B0E50 */ static void paint_boat_hire_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const auto* stationObj = ride.GetStationObject(); @@ -71,13 +71,13 @@ static void paint_boat_hire_station( { paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); track_paint_util_draw_pier( - session, ride, stationObj, session->MapPosition, direction, height, trackElement, session->CurrentRotation); + session, ride, stationObj, session.MapPosition, direction, height, trackElement, session.CurrentRotation); } else { paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); track_paint_util_draw_pier( - session, ride, stationObj, session->MapPosition, direction, height, trackElement, session->CurrentRotation); + session, ride, stationObj, session.MapPosition, direction, height, trackElement, session.CurrentRotation); } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -86,7 +86,7 @@ static void paint_boat_hire_station( /** rct2: 0x008B0E80 */ static void paint_boat_hire_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -94,31 +94,31 @@ static void paint_boat_hire_track_left_quarter_turn_1_tile( switch (direction) { case 0: - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 32, 0 }, { 0, 0, height }); - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 3, 3, 3 }, { 28, 28, height + 2 }); break; case 1: - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 32, 0 }, { 0, 0, height }); - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 3, 3, 3 }, { 28, 28, height + 2 }); break; case 2: - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 32, 0 }, { 0, 0, height }); - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 3, 3, 3 }, { 28, 28, height + 2 }); break; case 3: - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 3, 3, 3 }, { 28, 28, height + 2 }); - imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_BOAT_HIRE_FLAT_QUARTER_TURN_1_TILE_BACK_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, offset, { 32, 32, 0 }, { 0, 0, height }); break; } @@ -130,7 +130,7 @@ static void paint_boat_hire_track_left_quarter_turn_1_tile( /** rct2: 0x008B0E90 */ static void paint_boat_hire_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_boat_hire_track_left_quarter_turn_1_tile(session, ride, trackSequence, (direction + 3) % 4, height, trackElement); diff --git a/src/openrct2/ride/water/DingySlide.cpp b/src/openrct2/ride/water/DingySlide.cpp index 35899d9194..20871394f2 100644 --- a/src/openrct2/ride/water/DingySlide.cpp +++ b/src/openrct2/ride/water/DingySlide.cpp @@ -349,7 +349,7 @@ enum }; static void dinghy_slide_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -368,15 +368,15 @@ static void dinghy_slide_track_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -387,7 +387,7 @@ static void dinghy_slide_track_flat( } static void dinghy_slide_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -398,15 +398,15 @@ static void dinghy_slide_track_station( }; PaintAddImageAsParentRotated( - session, direction, imageIds[direction][0] | session->TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, + session, direction, imageIds[direction][0] | session.TrackColours[SCHEME_TRACK], 0, 0, 32, 20, 1, height, 0, 6, height + 3); PaintAddImageAsParentRotated( - session, direction, imageIds[direction][1] | session->TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); + session, direction, imageIds[direction][1] | session.TrackColours[SCHEME_MISC], 0, 0, 32, 32, 1, height); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_station(session, ride, direction, height, trackElement); @@ -417,7 +417,7 @@ static void dinghy_slide_track_station( } static void dinghy_slide_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -436,15 +436,15 @@ static void dinghy_slide_track_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 50, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -462,7 +462,7 @@ static void dinghy_slide_track_25_deg_up( } static void dinghy_slide_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -472,15 +472,15 @@ static void dinghy_slide_track_60_deg_up( { SPR_DINGHY_SLIDE_60_DEG_SE_NW, SPR_DINGHY_SLIDE_60_DEG_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 98, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -498,7 +498,7 @@ static void dinghy_slide_track_60_deg_up( } static void dinghy_slide_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -517,15 +517,15 @@ static void dinghy_slide_track_flat_to_25_deg_up( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 42, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -543,7 +543,7 @@ static void dinghy_slide_track_flat_to_25_deg_up( } static void dinghy_slide_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -553,15 +553,15 @@ static void dinghy_slide_track_25_deg_up_to_60_deg_up( { SPR_DINGHY_SLIDE_25_DEG_TO_60_DEG_SE_NW, SPR_DINGHY_SLIDE_25_DEG_TO_60_DEG_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -579,7 +579,7 @@ static void dinghy_slide_track_25_deg_up_to_60_deg_up( } static void dinghy_slide_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -589,15 +589,15 @@ static void dinghy_slide_track_60_deg_up_to_25_deg_up( { SPR_DINGHY_SLIDE_60_DEG_TO_25_DEG_SE_NW, SPR_DINGHY_SLIDE_60_DEG_TO_25_DEG_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -615,7 +615,7 @@ static void dinghy_slide_track_60_deg_up_to_25_deg_up( } static void dinghy_slide_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[2][4][2] = { @@ -634,15 +634,15 @@ static void dinghy_slide_track_25_deg_up_to_flat( }; uint8_t isChained = trackElement.HasChain() ? 1 : 0; - uint32_t imageId = imageIds[isChained][direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[isChained][direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[isChained][direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[isChained][direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -660,42 +660,42 @@ static void dinghy_slide_track_25_deg_up_to_flat( } static void dinghy_slide_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_right_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][5] = { @@ -760,15 +760,15 @@ static void dinghy_slide_track_right_quarter_turn_5( }; track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], frontImageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], frontImageIds); switch (trackSequence) { case 0: case 6: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -823,7 +823,7 @@ static void dinghy_slide_track_right_quarter_turn_5( } static void dinghy_slide_track_left_quarter_turn_5( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -831,14 +831,14 @@ static void dinghy_slide_track_left_quarter_turn_5( } static void dinghy_slide_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -868,8 +868,8 @@ static void dinghy_slide_track_s_bend_left( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -877,7 +877,7 @@ static void dinghy_slide_track_s_bend_left( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -889,7 +889,7 @@ static void dinghy_slide_track_s_bend_left( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -905,7 +905,7 @@ static void dinghy_slide_track_s_bend_left( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -916,7 +916,7 @@ static void dinghy_slide_track_s_bend_left( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -941,7 +941,7 @@ static void dinghy_slide_track_s_bend_left( } static void dinghy_slide_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -971,8 +971,8 @@ static void dinghy_slide_track_s_bend_right( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -980,7 +980,7 @@ static void dinghy_slide_track_s_bend_right( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -991,7 +991,7 @@ static void dinghy_slide_track_s_bend_right( if (direction == 0 || direction == 1) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1006,7 +1006,7 @@ static void dinghy_slide_track_s_bend_right( if (direction == 2 || direction == 3) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1017,7 +1017,7 @@ static void dinghy_slide_track_s_bend_right( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -1042,7 +1042,7 @@ static void dinghy_slide_track_s_bend_right( } static void dinghy_slide_track_right_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][3] = { @@ -1091,16 +1091,16 @@ static void dinghy_slide_track_right_quarter_turn_3( }; track_paint_util_right_quarter_turn_3_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_3_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], frontImageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], frontImageIds); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); switch (trackSequence) { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1123,7 +1123,7 @@ static void dinghy_slide_track_right_quarter_turn_3( } static void dinghy_slide_track_left_quarter_turn_3( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1131,7 +1131,7 @@ static void dinghy_slide_track_left_quarter_turn_3( } static void dinghy_slide_track_flat_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1141,15 +1141,15 @@ static void dinghy_slide_track_flat_covered( { SPR_DINGHY_SLIDE_FLAT_COVERED_NW_SE, SPR_DINGHY_SLIDE_FLAT_COVERED_FRONT_NW_SE }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -1160,7 +1160,7 @@ static void dinghy_slide_track_flat_covered( } static void dinghy_slide_track_25_deg_up_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1170,15 +1170,15 @@ static void dinghy_slide_track_25_deg_up_covered( { SPR_DINGHY_SLIDE_25_DEG_COVERED_SE_NW, SPR_DINGHY_SLIDE_25_DEG_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 50, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1196,7 +1196,7 @@ static void dinghy_slide_track_25_deg_up_covered( } static void dinghy_slide_track_60_deg_up_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1206,15 +1206,15 @@ static void dinghy_slide_track_60_deg_up_covered( { SPR_DINGHY_SLIDE_60_DEG_COVERED_SE_NW, SPR_DINGHY_SLIDE_60_DEG_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 98, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 32, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1232,7 +1232,7 @@ static void dinghy_slide_track_60_deg_up_covered( } static void dinghy_slide_track_flat_to_25_deg_up_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1242,15 +1242,15 @@ static void dinghy_slide_track_flat_to_25_deg_up_covered( { SPR_DINGHY_SLIDE_FLAT_TO_25_DEG_COVERED_SE_NW, SPR_DINGHY_SLIDE_FLAT_TO_25_DEG_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 42, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1268,7 +1268,7 @@ static void dinghy_slide_track_flat_to_25_deg_up_covered( } static void dinghy_slide_track_25_deg_up_to_60_deg_up_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1278,15 +1278,15 @@ static void dinghy_slide_track_25_deg_up_to_60_deg_up_covered( { SPR_DINGHY_SLIDE_25_DEG_TO_60_DEG_COVERED_SE_NW, SPR_DINGHY_SLIDE_25_DEG_TO_60_DEG_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 12, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1304,7 +1304,7 @@ static void dinghy_slide_track_25_deg_up_to_60_deg_up_covered( } static void dinghy_slide_track_60_deg_up_to_25_deg_up_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1314,15 +1314,15 @@ static void dinghy_slide_track_60_deg_up_to_25_deg_up_covered( { SPR_DINGHY_SLIDE_60_DEG_TO_25_DEG_COVERED_SE_NW, SPR_DINGHY_SLIDE_60_DEG_TO_25_DEG_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 66, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 20, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1340,7 +1340,7 @@ static void dinghy_slide_track_60_deg_up_to_25_deg_up_covered( } static void dinghy_slide_track_25_deg_up_to_flat_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -1350,15 +1350,15 @@ static void dinghy_slide_track_25_deg_up_to_flat_covered( { SPR_DINGHY_SLIDE_25_DEG_TO_FLAT_COVERED_SE_NW, SPR_DINGHY_SLIDE_25_DEG_TO_FLAT_COVERED_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); - imageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -1376,42 +1376,42 @@ static void dinghy_slide_track_25_deg_up_to_flat_covered( } static void dinghy_slide_track_25_deg_down_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_60_deg_down_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_60_deg_up_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_flat_to_25_deg_down_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up_to_flat_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_25_deg_down_to_60_deg_down_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_60_deg_up_to_25_deg_up_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_25_deg_down_to_flat_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_flat_to_25_deg_up_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void dinghy_slide_track_right_quarter_turn_5_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][5] = { @@ -1476,15 +1476,15 @@ static void dinghy_slide_track_right_quarter_turn_5_covered( }; track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], frontImageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], frontImageIds); switch (trackSequence) { case 0: case 6: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1539,7 +1539,7 @@ static void dinghy_slide_track_right_quarter_turn_5_covered( } static void dinghy_slide_track_left_quarter_turn_5_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[trackSequence]; @@ -1547,7 +1547,7 @@ static void dinghy_slide_track_left_quarter_turn_5_covered( } static void dinghy_slide_track_s_bend_left_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -1577,8 +1577,8 @@ static void dinghy_slide_track_s_bend_left_covered( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -1586,7 +1586,7 @@ static void dinghy_slide_track_s_bend_left_covered( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -1598,7 +1598,7 @@ static void dinghy_slide_track_s_bend_left_covered( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1614,7 +1614,7 @@ static void dinghy_slide_track_s_bend_left_covered( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_TUBES, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1625,7 +1625,7 @@ static void dinghy_slide_track_s_bend_left_covered( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -1650,7 +1650,7 @@ static void dinghy_slide_track_s_bend_left_covered( } static void dinghy_slide_track_s_bend_right_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -1680,8 +1680,8 @@ static void dinghy_slide_track_s_bend_right_covered( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -1689,7 +1689,7 @@ static void dinghy_slide_track_s_bend_right_covered( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -1700,7 +1700,7 @@ static void dinghy_slide_track_s_bend_right_covered( if (direction == 0 || direction == 1) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1715,7 +1715,7 @@ static void dinghy_slide_track_s_bend_right_covered( if (direction == 2 || direction == 3) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_TUBES, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -1726,7 +1726,7 @@ static void dinghy_slide_track_s_bend_right_covered( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -1751,7 +1751,7 @@ static void dinghy_slide_track_s_bend_right_covered( } static void dinghy_slide_track_right_quarter_turn_3_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const sprite_bb imageIds[4][3] = { @@ -1800,16 +1800,16 @@ static void dinghy_slide_track_right_quarter_turn_3_covered( }; track_paint_util_right_quarter_turn_3_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_3_tiles_paint_3( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], frontImageIds); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], frontImageIds); track_paint_util_right_quarter_turn_3_tiles_tunnel(session, height, direction, trackSequence, TUNNEL_0); switch (trackSequence) { case 0: case 3: - metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_TUBES, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); break; } @@ -1832,7 +1832,7 @@ static void dinghy_slide_track_right_quarter_turn_3_covered( } static void dinghy_slide_track_left_quarter_turn_3_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = mapLeftQuarterTurn3TilesToRightQuarterTurn3Tiles[trackSequence]; @@ -1840,7 +1840,7 @@ static void dinghy_slide_track_left_quarter_turn_3_covered( } static void dinghy_slide_track_60_deg_down_to_25_deg_down_covered( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { dinghy_slide_track_25_deg_up_to_60_deg_up_covered(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); diff --git a/src/openrct2/ride/water/LogFlume.cpp b/src/openrct2/ride/water/LogFlume.cpp index 59db5f0f12..e528694675 100644 --- a/src/openrct2/ride/water/LogFlume.cpp +++ b/src/openrct2/ride/water/LogFlume.cpp @@ -161,18 +161,18 @@ static constexpr const uint32_t LogFlumeTrackFlatImageIds[4][2] = { }; static void paint_log_flume_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = LogFlumeTrackFlatImageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = LogFlumeTrackFlatImageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = LogFlumeTrackFlatImageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = LogFlumeTrackFlatImageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 26, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); @@ -182,31 +182,31 @@ static void paint_log_flume_track_flat( } static void paint_log_flume_track_station( - paint_session* session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, [[maybe_unused]] uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = LogFlumeTrackFlatImageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = LogFlumeTrackFlatImageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 1, height, 0, 6, height + 3); if (direction & 1) { - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; } else { - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; } PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); if (direction & 1) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 6, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 7, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 5, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 8, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } track_paint_util_draw_station_3(session, ride, direction, height + 2, height, trackElement); @@ -219,7 +219,7 @@ static void paint_log_flume_track_station( } static void paint_log_flume_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -229,15 +229,15 @@ static void paint_log_flume_track_25_deg_up( { SPR_LOG_FLUME_25_DEG_UP_SE_NW, SPR_LOG_FLUME_25_DEG_UP_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 50, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -254,7 +254,7 @@ static void paint_log_flume_track_25_deg_up( } static void paint_log_flume_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -264,15 +264,15 @@ static void paint_log_flume_track_flat_to_25_deg_up( { SPR_LOG_FLUME_FLAT_TO_25_DEG_UP_SE_NW, SPR_LOG_FLUME_FLAT_TO_25_DEG_UP_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 42, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -289,7 +289,7 @@ static void paint_log_flume_track_flat_to_25_deg_up( } static void paint_log_flume_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -299,15 +299,15 @@ static void paint_log_flume_track_25_deg_up_to_flat( { SPR_LOG_FLUME_25_DEG_UP_TO_FLAT_SE_NW, SPR_LOG_FLUME_25_DEG_UP_TO_FLAT_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -324,7 +324,7 @@ static void paint_log_flume_track_25_deg_up_to_flat( } static void paint_log_flume_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -334,15 +334,15 @@ static void paint_log_flume_track_25_deg_down( { SPR_LOG_FLUME_25_DEG_DOWN_SE_NW, SPR_LOG_FLUME_25_DEG_UP_FRONT_NW_SE }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 50, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -359,7 +359,7 @@ static void paint_log_flume_track_25_deg_down( } static void paint_log_flume_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -369,15 +369,15 @@ static void paint_log_flume_track_flat_to_25_deg_down( { SPR_LOG_FLUME_FLAT_TO_25_DEG_DOWN_SE_NW, SPR_LOG_FLUME_25_DEG_UP_TO_FLAT_FRONT_NW_SE }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 34, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -394,7 +394,7 @@ static void paint_log_flume_track_flat_to_25_deg_down( } static void paint_log_flume_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -404,15 +404,15 @@ static void paint_log_flume_track_25_deg_down_to_flat( { SPR_LOG_FLUME_25_DEG_DOWN_TO_FLAT_SE_NW, SPR_LOG_FLUME_FLAT_TO_25_DEG_UP_FRONT_NW_SE }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 42, height, 0, 27, height); - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 3, height, session.TrackColours[SCHEME_SUPPORTS]); } if (direction == 0 || direction == 3) @@ -429,7 +429,7 @@ static void paint_log_flume_track_25_deg_down_to_flat( } static void paint_log_flume_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -459,8 +459,8 @@ static void paint_log_flume_track_s_bend_left( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -468,7 +468,7 @@ static void paint_log_flume_track_s_bend_left( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -480,7 +480,7 @@ static void paint_log_flume_track_s_bend_left( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_BOXED, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -496,7 +496,7 @@ static void paint_log_flume_track_s_bend_left( { metal_a_supports_paint_setup( session, METAL_SUPPORTS_BOXED, 5 + (direction & 1), (direction & 1), height, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -507,7 +507,7 @@ static void paint_log_flume_track_s_bend_left( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -532,7 +532,7 @@ static void paint_log_flume_track_s_bend_left( } static void paint_log_flume_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -562,8 +562,8 @@ static void paint_log_flume_track_s_bend_right( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; switch (trackSequence) @@ -571,7 +571,7 @@ static void paint_log_flume_track_s_bend_right( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -582,7 +582,7 @@ static void paint_log_flume_track_s_bend_right( if (direction == 0 || direction == 1) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -597,7 +597,7 @@ static void paint_log_flume_track_s_bend_right( if (direction == 2 || direction == 3) { metal_a_supports_paint_setup( - session, METAL_SUPPORTS_BOXED, 8 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_BOXED, 8 - (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( session, @@ -608,7 +608,7 @@ static void paint_log_flume_track_s_bend_right( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); break; @@ -633,7 +633,7 @@ static void paint_log_flume_track_s_bend_right( } static void paint_log_flume_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -667,13 +667,13 @@ static void paint_log_flume_track_left_quarter_turn_3_tiles( }; track_paint_util_left_quarter_turn_3_tiles_paint( - session, 2, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, 2, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_left_quarter_turn_3_tiles_paint_with_height_offset( - session, 0, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIdsFront, 27); + session, 0, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIdsFront, 27); if (trackSequence != 1 && trackSequence != 2) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (trackSequence) @@ -712,7 +712,7 @@ static void paint_log_flume_track_left_quarter_turn_3_tiles( } static void paint_log_flume_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][3] = { @@ -746,13 +746,13 @@ static void paint_log_flume_track_right_quarter_turn_3_tiles( }; track_paint_util_right_quarter_turn_3_tiles_paint_2( - session, 2, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIds); + session, 2, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIds); track_paint_util_right_quarter_turn_3_tiles_paint_2_with_height_offset( - session, 0, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], imageIdsFront, 27); + session, 0, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], imageIdsFront, 27); if (trackSequence != 1 && trackSequence != 2) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (trackSequence) @@ -791,7 +791,7 @@ static void paint_log_flume_track_right_quarter_turn_3_tiles( } static void paint_log_flume_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId = SPR_STATION_BASE_D | IMAGE_TYPE_REMAP; @@ -799,19 +799,19 @@ static void paint_log_flume_track_on_ride_photo( if (direction & 1) { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 6, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK_ALT, 7, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } else { - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session->TrackColours[SCHEME_SUPPORTS]); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 5, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_FORK, 8, 6, height, session.TrackColours[SCHEME_SUPPORTS]); } - imageId = LogFlumeTrackFlatImageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = LogFlumeTrackFlatImageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 0, height, 0, 6, height + 3); - imageId = LogFlumeTrackFlatImageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = LogFlumeTrackFlatImageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 1, 21, height, 0, 27, height + 5); track_paint_util_onride_photo_paint(session, direction, height + 3, trackElement); @@ -822,7 +822,7 @@ static void paint_log_flume_track_on_ride_photo( } static void paint_log_flume_track_reverser( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][2] = { @@ -832,13 +832,13 @@ static void paint_log_flume_track_reverser( { SPR_LOG_FLUME_REVERSER_SE_NW, SPR_LOG_FLUME_REVERSER_FRONT_SE_NW }, }; - uint32_t imageId = imageIds[direction][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 26, height, 0, 27, height); - metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + metal_a_supports_paint_setup(session, METAL_SUPPORTS_BOXED, 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_rotated(session, direction, height, TUNNEL_0); paint_util_set_segment_support_height( diff --git a/src/openrct2/ride/water/RiverRapids.cpp b/src/openrct2/ride/water/RiverRapids.cpp index c706e4058d..d9815f38e9 100644 --- a/src/openrct2/ride/water/RiverRapids.cpp +++ b/src/openrct2/ride/water/RiverRapids.cpp @@ -178,12 +178,12 @@ static constexpr const uint32_t river_rapids_track_pieces_25_deg_down_to_flat[][ * rct2: 0x006D5889 */ void vehicle_visual_river_rapids( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { int32_t image_id; int32_t baseImage_id = imageDirection; - uint32_t rotation = session->CurrentRotation; + uint32_t rotation = session.CurrentRotation; int32_t ecx = ((vehicle->spin_sprite / 8) + (rotation * 8)) & 31; int32_t j = 0; if (vehicle->Pitch == 0) @@ -232,7 +232,7 @@ void vehicle_visual_river_rapids( session, image_id, { 0, 0, z }, { bb->length_x, bb->length_y, bb->length_z }, { bb->offset_x, bb->offset_y, bb->offset_z + z }); - if (session->DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) + if (session.DPI.zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && !vehicle->IsGhost()) { // Draw peeps: (this particular vehicle doesn't sort them back to front like others so the back ones sometimes clip, but // that's how the original does it...) @@ -277,7 +277,7 @@ void vehicle_visual_river_rapids( /** rct2: 0x00757650 */ static void paint_river_rapids_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -285,25 +285,25 @@ static void paint_river_rapids_track_flat( if (direction & 1) { imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_NW_SE : SPR_RIVER_RAPIDS_FLAT_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_FRONT_NW_SE : SPR_RIVER_RAPIDS_FLAT_FRONT_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 3 }, { 27, 0, height + 17 }); } else { imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_SW_NE : SPR_RIVER_RAPIDS_FLAT_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_FRONT_SW_NE : SPR_RIVER_RAPIDS_FLAT_FRONT_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 3 }, { 0, 27, height + 17 }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction & 1) { @@ -320,7 +320,7 @@ static void paint_river_rapids_track_flat( /** rct2: 0x007576C0 */ static void paint_river_rapids_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_flat(session, ride, trackSequence, direction, height, trackElement); @@ -329,7 +329,7 @@ static void paint_river_rapids_station( } static void paint_river_rapids_track_25_deg( - paint_session* session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) + paint_session& session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) { uint32_t imageId; paint_struct* ps; @@ -337,48 +337,48 @@ static void paint_river_rapids_track_25_deg( switch (direction) { case 0: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 34 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 9, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_7); break; case 1: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 34 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 10, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_SQUARE_8); break; case 2: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 34 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 11, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_SQUARE_8); break; case 3: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 34 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 12, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_7); break; } @@ -388,7 +388,7 @@ static void paint_river_rapids_track_25_deg( } static void paint_river_rapids_track_25_deg_to_flat_a( - paint_session* session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) + paint_session& session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) { uint32_t imageId; paint_struct* ps; @@ -396,48 +396,48 @@ static void paint_river_rapids_track_25_deg_to_flat_a( switch (direction) { case 0: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 18 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 5, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height - 8, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 18 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 6, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height + 8, TUNNEL_14); break; case 2: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 18 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 7, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height + 8, TUNNEL_14); break; case 3: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 18 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 8, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height - 8, TUNNEL_SQUARE_FLAT); break; } @@ -447,7 +447,7 @@ static void paint_river_rapids_track_25_deg_to_flat_a( } static void paint_river_rapids_track_25_deg_to_flat_b( - paint_session* session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) + paint_session& session, uint8_t direction, int32_t height, const uint32_t sprites[4][2]) { uint32_t imageId; paint_struct* ps; @@ -455,48 +455,48 @@ static void paint_river_rapids_track_25_deg_to_flat_b( switch (direction) { case 0: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 1, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 2, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_8); break; case 2: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - session->WoodenSupportsPrependTo = ps; + session.WoodenSupportsPrependTo = ps; - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height + 16 }); - wooden_a_supports_paint_setup(session, 0, 3, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_8); break; case 3: - imageId = sprites[direction][0] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][0] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - imageId = sprites[direction][1] | session->TrackColours[SCHEME_TRACK]; + imageId = sprites[direction][1] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height + 16 }); - wooden_a_supports_paint_setup(session, 1, 4, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; } @@ -507,7 +507,7 @@ static void paint_river_rapids_track_25_deg_to_flat_b( /** rct2: 0x00757660 */ static void paint_river_rapids_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg(session, direction, height, river_rapids_track_pieces_25_deg_up); @@ -515,7 +515,7 @@ static void paint_river_rapids_track_25_deg_up( /** rct2: 0x00757670 */ static void paint_river_rapids_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg_to_flat_b(session, direction, height, river_rapids_track_pieces_flat_to_25_deg_up); @@ -523,7 +523,7 @@ static void paint_river_rapids_track_flat_to_25_deg_up( /** rct2: 0x00757680 */ static void paint_river_rapids_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg_to_flat_a(session, direction, height, river_rapids_track_pieces_25_deg_up_to_flat); @@ -531,7 +531,7 @@ static void paint_river_rapids_track_25_deg_up_to_flat( /** rct2: 0x00757690 */ static void paint_river_rapids_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg(session, (direction + 2) % 4, height, river_rapids_track_pieces_25_deg_down); @@ -539,7 +539,7 @@ static void paint_river_rapids_track_25_deg_down( /** rct2: 0x007576A0 */ static void paint_river_rapids_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg_to_flat_a( @@ -548,7 +548,7 @@ static void paint_river_rapids_track_flat_to_25_deg_down( /** rct2: 0x007576B0 */ static void paint_river_rapids_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_25_deg_to_flat_b( @@ -557,48 +557,48 @@ static void paint_river_rapids_track_25_deg_down_to_flat( /** rct2: 0x007576F0 */ static void paint_river_rapids_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; switch (direction) { case 0: - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 26, 11 }, { 4, 2, height }); - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SW_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 1, 7 }, { 28, 27, height + 13 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 1: - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 0, 0, height }); - imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 30, 7 }, { 27, 1, height + 13 }); - imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 1, 7 }, { 1, 27, height + 13 }); break; case 2: - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 28, 11 }, { 2, 4, height }); - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_NE_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 2, 7 }, { 27, 28, height + 13 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; case 3: - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 4, 4, height }); - imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 7 }, { 28, 28, height + 13 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); @@ -606,14 +606,14 @@ static void paint_river_rapids_track_left_quarter_turn_1_tile( break; } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); paint_util_set_general_support_height(session, height + 32, 0x20); } /** rct2: 0x00757700 */ static void paint_river_rapids_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -621,10 +621,10 @@ static void paint_river_rapids_track_right_quarter_turn_1_tile( switch (direction) { case 0: - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 4, 4, height }); - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 7 }, { 28, 28, height + 13 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); @@ -632,45 +632,45 @@ static void paint_river_rapids_track_right_quarter_turn_1_tile( break; case 1: - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SE_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SE_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 26, 11 }, { 4, 2, height }); - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SE_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SE_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 1, 7 }, { 28, 27, height + 13 }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); break; case 2: - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 0, 0, height }); - imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 30, 7 }, { 27, 1, height + 13 }); - imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 1, 7 }, { 1, 27, height + 13 }); break; case 3: - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NW_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NW_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 28, 11 }, { 2, 4, height }); - imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_NW_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_NW_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 27, 2, height + 13 }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); break; } - wooden_a_supports_paint_setup(session, 1 - (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, 1 - (direction & 1), 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); } /** rct2: 0x00757710 */ static void paint_river_rapids_track_waterfall( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -680,43 +680,43 @@ static void paint_river_rapids_track_waterfall( if (direction & 1) { imageId = (direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NE_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NE_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 4, 0, height + 17 }); imageId = (direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_FRONT_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_FRONT_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 27, 0, height + 17 }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SW_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 27, 0, height + 17 }); } else { imageId = (direction == 0 ? SPR_RIVER_RAPIDS_WATERFALL_SW_NE : SPR_RIVER_RAPIDS_WATERFALL_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_BASE_NW_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NW_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_TOP_NW_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 27 }, { 0, 4, height + 17 }); imageId = (direction == 0 ? SPR_RIVER_RAPIDS_WATERFALL_FRONT_SW_NE : SPR_RIVER_RAPIDS_WATERFALL_FRONT_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 27 }, { 0, 27, height + 17 }); - imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_WATERFALL_SIDE_SE_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 1, 27 }, { 0, 27, height + 17 }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction & 1) { @@ -733,7 +733,7 @@ static void paint_river_rapids_track_waterfall( /** rct2: 0x00757720 */ static void paint_river_rapids_track_rapids( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -742,22 +742,22 @@ static void paint_river_rapids_track_rapids( if (direction & 1) { - imageId = (SPR_RIVER_RAPIDS_RAPIDS_NW_SE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_RAPIDS_NW_SE_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_NW_SE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_NW_SE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 11 }, { 27, 0, height + 17 }); } else { - imageId = (SPR_RIVER_RAPIDS_RAPIDS_SW_NE_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_RAPIDS_SW_NE_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_SW_NE | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_RIVER_RAPIDS_RAPIDS_FRONT_SW_NE | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 11 }, { 0, 27, height + 17 }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction & 1) { @@ -774,7 +774,7 @@ static void paint_river_rapids_track_rapids( /** rct2: 0x00757740 */ static void paint_river_rapids_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_river_rapids_track_flat(session, ride, trackSequence, direction, height, trackElement); @@ -784,7 +784,7 @@ static void paint_river_rapids_track_on_ride_photo( /** rct2: 0x */ static void paint_river_rapids_track_whirlpool( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -794,31 +794,31 @@ static void paint_river_rapids_track_whirlpool( if (direction & 1) { imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_NW_SE : SPR_RIVER_RAPIDS_FLAT_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); - imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height }); imageId = (direction == 1 ? SPR_RIVER_RAPIDS_FLAT_FRONT_NW_SE : SPR_RIVER_RAPIDS_FLAT_FRONT_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 3 }, { 27, 0, height + 17 }); } else { imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_SW_NE : SPR_RIVER_RAPIDS_FLAT_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); - imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session->TrackColours[SCHEME_TRACK]; + imageId = (SPR_RIVER_RAPIDS_RAPIDS_WHIRLPOOL_FRAME_0 + frameNum) | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsChild(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height }); imageId = (direction == 0 ? SPR_RIVER_RAPIDS_FLAT_FRONT_SW_NE : SPR_RIVER_RAPIDS_FLAT_FRONT_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 3 }, { 0, 27, height + 17 }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction & 1) { diff --git a/src/openrct2/ride/water/SplashBoats.cpp b/src/openrct2/ride/water/SplashBoats.cpp index 58259a65d6..5f5929a426 100644 --- a/src/openrct2/ride/water/SplashBoats.cpp +++ b/src/openrct2/ride/water/SplashBoats.cpp @@ -475,16 +475,16 @@ static constexpr const sprite_bb RiverRaftsRightQuarterTurn5_Side[4][5] = { }; static void paint_splash_boats_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats25DegUpImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats25DegUpFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats25DegUpImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats25DegUpFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 50, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 9 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -499,17 +499,17 @@ static void paint_splash_boats_track_25_deg_up( } static void paint_splash_boats_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats60DegUpImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats60DegUpFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats60DegUpImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats60DegUpFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 98, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 21 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 21 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -524,16 +524,16 @@ static void paint_splash_boats_track_60_deg_up( } static void paint_splash_boats_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoatsFlatTo25DegUpImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoatsFlatTo25DegUpFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoatsFlatTo25DegUpImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoatsFlatTo25DegUpFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 42, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 1 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 1 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -548,16 +548,16 @@ static void paint_splash_boats_track_flat_to_25_deg_up( } static void paint_splash_boats_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats25DegUpToFlatImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats25DegUpToFlatFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats25DegUpToFlatImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats25DegUpToFlatFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 34, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 5 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 5 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -572,17 +572,17 @@ static void paint_splash_boats_track_25_deg_up_to_flat( } static void paint_splash_boats_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats25DegUpTo60DegUpImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats25DegUpTo60DegUpFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats25DegUpTo60DegUpImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats25DegUpTo60DegUpFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 13 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 13 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -597,17 +597,17 @@ static void paint_splash_boats_track_25_deg_up_to_60_deg_up( } static void paint_splash_boats_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats60DegUpTo25DegUpImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats60DegUpTo25DegUpFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats60DegUpTo25DegUpImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats60DegUpTo25DegUpFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; - session->WoodenSupportsPrependTo = PaintAddImageAsParentRotated( + session.WoodenSupportsPrependTo = PaintAddImageAsParentRotated( session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 66, height, 0, 27, height); - wooden_a_supports_paint_setup(session, (direction & 1), 17 + direction, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 17 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -622,18 +622,18 @@ static void paint_splash_boats_track_60_deg_up_to_25_deg_up( } static void paint_splash_boats_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats25DegDownImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats25DegDownFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats25DegDownImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats25DegDownFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 50, height, 0, 27, height); static constexpr const uint8_t specialSupport[] = { 11, 12, 9, 10 }; wooden_a_supports_paint_setup( - session, (direction & 1), specialSupport[direction], height, session->TrackColours[SCHEME_SUPPORTS]); + session, (direction & 1), specialSupport[direction], height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -648,25 +648,25 @@ static void paint_splash_boats_track_25_deg_down( } static void paint_splash_boats_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_splash_boats_track_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void paint_splash_boats_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoatsFlatTo25DegDownImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoatsFlatTo25DegDownFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoatsFlatTo25DegDownImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoatsFlatTo25DegDownFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 34, height, 0, 27, height); static constexpr const uint8_t specialSupport[] = { 7, 8, 5, 6 }; wooden_a_supports_paint_setup( - session, (direction & 1), specialSupport[direction], height, session->TrackColours[SCHEME_SUPPORTS]); + session, (direction & 1), specialSupport[direction], height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -681,32 +681,32 @@ static void paint_splash_boats_track_flat_to_25_deg_down( } static void paint_splash_boats_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_splash_boats_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void paint_splash_boats_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { paint_splash_boats_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void paint_splash_boats_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { - uint32_t imageId = SplashBoats25DegDownToFlatImageId[direction] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = SplashBoats25DegDownToFlatFrontImageId[direction] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = SplashBoats25DegDownToFlatImageId[direction] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = SplashBoats25DegDownToFlatFrontImageId[direction] | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 20, 2, height, 0, 6, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 1, 42, height, 0, 27, height); static constexpr const uint8_t specialSupport[] = { 3, 4, 1, 2 }; wooden_a_supports_paint_setup( - session, (direction & 1), specialSupport[direction], height, session->TrackColours[SCHEME_SUPPORTS]); + session, (direction & 1), specialSupport[direction], height, session.TrackColours[SCHEME_SUPPORTS]); if (direction == 0 || direction == 3) { @@ -733,7 +733,7 @@ static void paint_splash_boats_track_25_deg_down_to_flat( /** Start of elements originally from River Rafts */ /** rct2: 0x0089B170 */ static void paint_splash_boats_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { uint32_t imageId; @@ -741,25 +741,25 @@ static void paint_splash_boats_track_flat( if (direction & 1) { imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 2 }, { 6, 0, height }); imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_SIDE_NW_SE : SPR_SPLASH_BOATS_FLAT_SIDE_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height }); } else { imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 2 }, { 0, 6, height }); imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_SIDE_SW_NE : SPR_SPLASH_BOATS_FLAT_SIDE_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); if (direction & 1) { @@ -776,29 +776,29 @@ static void paint_splash_boats_track_flat( /** rct2: 0x0089B1A0 */ static void paint_splash_boats_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { if (direction & 1) { uint32_t imageId = (direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height + 3 }); - imageId = SPR_STATION_BASE_B_NW_SE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_NW_SE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); } else { uint32_t imageId = (direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW) - | session->TrackColours[SCHEME_TRACK]; + | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height + 3 }); - imageId = SPR_STATION_BASE_B_SW_NE | session->TrackColours[SCHEME_MISC]; + imageId = SPR_STATION_BASE_B_SW_NE | session.TrackColours[SCHEME_MISC]; PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }); } - wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]); track_paint_util_draw_narrow_station_platform(session, ride, direction, height, 7, trackElement); @@ -810,13 +810,13 @@ static void paint_splash_boats_station( /** rct2: 0x0089B1D0 */ static void paint_splash_boats_track_left_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Top); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Top); track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Side); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], RiverRaftsLeftQuarterTurn5_Side); if (trackSequence != 1 && trackSequence != 4) { @@ -827,7 +827,7 @@ static void paint_splash_boats_track_left_quarter_turn_5_tiles( { 1, 0xFF, 4, 2, 0xFF, 4, 0 }, }; uint8_t supportType = supportTypes[direction][trackSequence]; - wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (trackSequence) @@ -891,13 +891,13 @@ static void paint_splash_boats_track_left_quarter_turn_5_tiles( /** rct2: 0x0089B1D0 */ static void paint_splash_boats_track_right_quarter_turn_5_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Top); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Top); track_paint_util_right_quarter_turn_5_tiles_paint_2( - session, height, direction, trackSequence, session->TrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Side); + session, height, direction, trackSequence, session.TrackColours[SCHEME_TRACK], RiverRaftsRightQuarterTurn5_Side); if (trackSequence != 1 && trackSequence != 4) { @@ -908,7 +908,7 @@ static void paint_splash_boats_track_right_quarter_turn_5_tiles( { 1, 0xFF, 3, 5, 0xFF, 3, 0 }, }; uint8_t supportType = supportTypes[direction][trackSequence]; - wooden_a_supports_paint_setup(session, supportType, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportType, 0, height, session.TrackColours[SCHEME_SUPPORTS]); } switch (trackSequence) @@ -972,7 +972,7 @@ static void paint_splash_boats_track_right_quarter_turn_5_tiles( /** rct2: 0x0089B180 */ static void paint_splash_boats_track_s_bend_left( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -1002,8 +1002,8 @@ static void paint_splash_boats_track_s_bend_left( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; static constexpr const int32_t supportTypes1[] = { 5, 2, 3, 4 }; static constexpr const int32_t supportTypes2[] = { 3, 4, 5, 2 }; @@ -1013,7 +1013,7 @@ static void paint_splash_boats_track_s_bend_left( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); break; case 1: @@ -1021,7 +1021,7 @@ static void paint_splash_boats_track_s_bend_left( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 26, 2, height, 0, bboy, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 26, 0, height, 0, bboy, height + 27); - wooden_a_supports_paint_setup(session, supportTypes1[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportTypes1[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, @@ -1034,7 +1034,7 @@ static void paint_splash_boats_track_s_bend_left( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 26, 2, height, 0, bboy, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 26, 0, height, 0, bboy, height + 27); - wooden_a_supports_paint_setup(session, supportTypes2[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportTypes2[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, @@ -1045,7 +1045,7 @@ static void paint_splash_boats_track_s_bend_left( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); break; } @@ -1070,7 +1070,7 @@ static void paint_splash_boats_track_s_bend_left( /** rct2: 0x0089B190 */ static void paint_splash_boats_track_s_bend_right( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { static constexpr const uint32_t imageIds[4][4][2] = { @@ -1100,8 +1100,8 @@ static void paint_splash_boats_track_s_bend_right( }, }; - uint32_t imageId = imageIds[direction][trackSequence][0] | session->TrackColours[SCHEME_TRACK]; - uint32_t frontImageId = imageIds[direction][trackSequence][1] | session->TrackColours[SCHEME_TRACK]; + uint32_t imageId = imageIds[direction][trackSequence][0] | session.TrackColours[SCHEME_TRACK]; + uint32_t frontImageId = imageIds[direction][trackSequence][1] | session.TrackColours[SCHEME_TRACK]; int16_t bboy; static constexpr const int32_t supportTypes1[] = { 4, 5, 2, 3 }; static constexpr const int32_t supportTypes2[] = { 2, 3, 4, 5 }; @@ -1111,7 +1111,7 @@ static void paint_splash_boats_track_s_bend_right( case 0: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); break; case 1: @@ -1119,7 +1119,7 @@ static void paint_splash_boats_track_s_bend_right( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 26, 2, height, 0, bboy, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 26, 0, height, 0, bboy, height + 27); - wooden_a_supports_paint_setup(session, supportTypes1[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportTypes1[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, @@ -1132,7 +1132,7 @@ static void paint_splash_boats_track_s_bend_right( PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 26, 2, height, 0, bboy, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 26, 0, height, 0, bboy, height + 27); - wooden_a_supports_paint_setup(session, supportTypes2[direction], 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, supportTypes2[direction], 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, @@ -1143,7 +1143,7 @@ static void paint_splash_boats_track_s_bend_right( case 3: PaintAddImageAsParentRotated(session, direction, imageId, 0, 0, 32, 27, 2, height, 0, 2, height); PaintAddImageAsParentRotated(session, direction, frontImageId, 0, 0, 32, 27, 0, height, 0, 2, height + 27); - wooden_a_supports_paint_setup(session, direction & 1, 0, height, session->TrackColours[SCHEME_SUPPORTS]); + wooden_a_supports_paint_setup(session, direction & 1, 0, height, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); break; } @@ -1167,7 +1167,7 @@ static void paint_splash_boats_track_s_bend_right( } static void paint_splash_boats_track_on_ride_photo( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { switch (direction) @@ -1253,7 +1253,7 @@ TRACK_PAINT_FUNCTION get_track_paint_function_splash_boats(int32_t trackType) * rct2: 0x006D4295 */ void vehicle_visual_splash_boats_or_water_coaster( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { if (vehicle->IsHead()) @@ -1268,10 +1268,10 @@ void vehicle_visual_splash_boats_or_water_coaster( { return; } - session->CurrentlyDrawnItem = vehicle; - imageDirection = ((session->CurrentRotation * 8) + vehicle->sprite_direction) & 0x1F; - session->SpritePosition.x = vehicle->x; - session->SpritePosition.y = vehicle->y; + session.CurrentlyDrawnItem = vehicle; + imageDirection = ((session.CurrentRotation * 8) + vehicle->sprite_direction) & 0x1F; + session.SpritePosition.x = vehicle->x; + session.SpritePosition.y = vehicle->y; vehicle->Paint(session, imageDirection); } diff --git a/src/openrct2/ride/water/SubmarineRide.cpp b/src/openrct2/ride/water/SubmarineRide.cpp index df0092d550..128a77f1a5 100644 --- a/src/openrct2/ride/water/SubmarineRide.cpp +++ b/src/openrct2/ride/water/SubmarineRide.cpp @@ -52,7 +52,7 @@ static uint32_t SubmarineVehicleGetBaseImageId( * rct2: 0x006D44D5 */ void vehicle_visual_submarine( - paint_session* session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, + paint_session& session, int32_t x, int32_t imageDirection, int32_t y, int32_t z, const Vehicle* vehicle, const rct_ride_entry_vehicle* vehicleEntry) { auto baseImageId = SubmarineVehicleGetBaseImageId(vehicle, vehicleEntry, imageDirection); @@ -76,7 +76,7 @@ void vehicle_visual_submarine( } static void submarine_ride_paint_track_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { const auto* stationObj = ride.GetStationObject(); @@ -85,21 +85,21 @@ static void submarine_ride_paint_track_station( if (direction & 1) { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 20, 32, 3 }, { 6, 0, heightLower }); paint_util_push_tunnel_right(session, height, TUNNEL_SQUARE_FLAT); track_paint_util_draw_pier( - session, ride, stationObj, session->MapPosition, direction, height, trackElement, session->CurrentRotation); + session, ride, stationObj, session.MapPosition, direction, height, trackElement, session.CurrentRotation); } else { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 32, 20, 3 }, { 0, 6, heightLower }); paint_util_push_tunnel_left(session, height, TUNNEL_SQUARE_FLAT); track_paint_util_draw_pier( - session, ride, stationObj, session->MapPosition, direction, height, trackElement, session->CurrentRotation); + session, ride, stationObj, session.MapPosition, direction, height, trackElement, session.CurrentRotation); } paint_util_set_segment_support_height(session, SEGMENTS_ALL, 0xFFFF, 0); @@ -107,7 +107,7 @@ static void submarine_ride_paint_track_station( } static void submarine_ride_paint_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { int32_t heightLower = height - 16; @@ -115,22 +115,22 @@ static void submarine_ride_paint_track_flat( if (direction & 1) { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 20, 32, 3 }, { 6, 0, heightLower }); paint_util_push_tunnel_right(session, heightLower, TUNNEL_0); } else { - imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session->TrackColours[SCHEME_TRACK]; + imageId = SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW | session.TrackColours[SCHEME_TRACK]; PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 32, 20, 3 }, { 0, 6, heightLower }); paint_util_push_tunnel_left(session, heightLower, TUNNEL_0); } - if (track_paint_util_should_paint_supports(session->MapPosition)) + if (track_paint_util_should_paint_supports(session.MapPosition)) { metal_a_supports_paint_setup( session, (direction & 1) ? METAL_SUPPORTS_STICK_ALT : METAL_SUPPORTS_STICK, 4, -1, heightLower, - session->TrackColours[SCHEME_SUPPORTS]); + session.TrackColours[SCHEME_SUPPORTS]); } paint_util_set_segment_support_height( @@ -139,11 +139,11 @@ static void submarine_ride_paint_track_flat( } static void submarine_ride_paint_track_left_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_3_tiles_paint( - session, 3, height - 16, direction, trackSequence, session->TrackColours[SCHEME_TRACK], + session, 3, height - 16, direction, trackSequence, session.TrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn3Tiles); track_paint_util_left_quarter_turn_3_tiles_tunnel(session, height - 16, TUNNEL_0, direction, trackSequence); @@ -151,7 +151,7 @@ static void submarine_ride_paint_track_left_quarter_turn_3_tiles( { case 0: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, -1, height - 16, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, -1, height - 16, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_D0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_B4, direction), 0xFFFF, 0); break; @@ -161,7 +161,7 @@ static void submarine_ride_paint_track_left_quarter_turn_3_tiles( break; case 3: metal_a_supports_paint_setup( - session, METAL_SUPPORTS_STICK, 4, -1, height - 16, session->TrackColours[SCHEME_SUPPORTS]); + session, METAL_SUPPORTS_STICK, 4, -1, height - 16, session.TrackColours[SCHEME_SUPPORTS]); paint_util_set_segment_support_height( session, paint_util_rotate_segments(SEGMENT_C8 | SEGMENT_C4 | SEGMENT_D4 | SEGMENT_C0, direction), 0xFFFF, 0); break; @@ -177,7 +177,7 @@ static constexpr const uint8_t submarine_ride_right_quarter_turn_3_tiles_to_left 0, }; static void submarine_ride_paint_track_right_quarter_turn_3_tiles( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = submarine_ride_right_quarter_turn_3_tiles_to_left_turn_map[trackSequence]; @@ -186,11 +186,11 @@ static void submarine_ride_paint_track_right_quarter_turn_3_tiles( } static void submarine_ride_paint_track_left_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { track_paint_util_left_quarter_turn_1_tile_paint( - session, 1, height - 16, 0, direction, session->TrackColours[SCHEME_TRACK], + session, 1, height - 16, 0, direction, session.TrackColours[SCHEME_TRACK], trackSpritesSubmarineRideMiniHelicoptersQuarterTurn1Tile); track_paint_util_left_quarter_turn_1_tile_tunnel(session, direction, height - 16, 0, TUNNEL_0, 0, TUNNEL_0); @@ -200,7 +200,7 @@ static void submarine_ride_paint_track_left_quarter_turn_1_tile( } static void submarine_ride_paint_track_right_quarter_turn_1_tile( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { submarine_ride_paint_track_left_quarter_turn_1_tile( diff --git a/src/openrct2/ride/water/WaterCoaster.cpp b/src/openrct2/ride/water/WaterCoaster.cpp index f474bbf44a..ae334fcde9 100644 --- a/src/openrct2/ride/water/WaterCoaster.cpp +++ b/src/openrct2/ride/water/WaterCoaster.cpp @@ -14,7 +14,7 @@ #include "../coaster/JuniorRollerCoaster.h" static void water_rc_track_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -24,7 +24,7 @@ static void water_rc_track_flat( } static void water_rc_track_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -34,7 +34,7 @@ static void water_rc_track_25_deg_up( } static void water_rc_track_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -44,7 +44,7 @@ static void water_rc_track_flat_to_25_deg_up( } static void water_rc_track_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -54,28 +54,28 @@ static void water_rc_track_25_deg_up_to_flat( } static void water_rc_track_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void water_rc_track_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_25_deg_up_to_flat(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void water_rc_track_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_flat_to_25_deg_up(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); } static void water_rc_track_diag_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -85,7 +85,7 @@ static void water_rc_track_diag_flat( } static void water_rc_track_diag_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -95,7 +95,7 @@ static void water_rc_track_diag_25_deg_up( } static void water_rc_track_diag_flat_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -105,7 +105,7 @@ static void water_rc_track_diag_flat_to_25_deg_up( } static void water_rc_track_diag_25_deg_up_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -115,7 +115,7 @@ static void water_rc_track_diag_25_deg_up_to_flat( } static void water_rc_track_diag_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -125,7 +125,7 @@ static void water_rc_track_diag_25_deg_down( } static void water_rc_track_diag_flat_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -135,7 +135,7 @@ static void water_rc_track_diag_flat_to_25_deg_down( } static void water_rc_track_diag_25_deg_down_to_flat( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { bool isChained = trackElement.HasChain(); @@ -145,21 +145,21 @@ static void water_rc_track_diag_25_deg_down_to_flat( } static void water_rc_track_station( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_station(session, ride, trackSequence, direction, height, trackElement, RIDE_TYPE_WATER_COASTER); } static void water_rc_track_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_60_deg_up(session, ride, trackSequence, direction, height, trackElement, JuniorRcChainType::None); } static void water_rc_track_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_25_deg_up_to_60_deg_up( @@ -167,7 +167,7 @@ static void water_rc_track_25_deg_up_to_60_deg_up( } static void water_rc_track_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_60_deg_up_to_25_deg_up( @@ -175,21 +175,21 @@ static void water_rc_track_60_deg_up_to_25_deg_up( } static void water_rc_track_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void water_rc_track_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_60_deg_up_to_25_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); } static void water_rc_track_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_25_deg_up_to_60_deg_up(session, ride, trackSequence, (direction + 2) % 4, height, trackElement); @@ -198,7 +198,7 @@ static void water_rc_track_60_deg_down_to_25_deg_down( // 5 tile turns static void water_rc_track_left_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_left_quarter_turn_5_tiles_25_deg_up( @@ -206,7 +206,7 @@ static void water_rc_track_left_quarter_turn_5_tiles_25_deg_up( } static void water_rc_track_right_quarter_turn_5_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_right_quarter_turn_5_tiles_25_deg_up( @@ -218,7 +218,7 @@ static constexpr const uint8_t water_rc_left_quarter_turn_5_tiles_to_right_turn_ }; static void water_rc_track_left_quarter_turn_5_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_right_quarter_turn_5_tiles_25_deg_up( @@ -227,7 +227,7 @@ static void water_rc_track_left_quarter_turn_5_tiles_25_deg_down( } static void water_rc_track_right_quarter_turn_5_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { water_rc_track_left_quarter_turn_5_tiles_25_deg_up( @@ -238,7 +238,7 @@ static void water_rc_track_right_quarter_turn_5_tiles_25_deg_down( // 3 tile turns static void water_rc_track_right_quarter_turn_3_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_up( @@ -246,7 +246,7 @@ static void water_rc_track_right_quarter_turn_3_tiles_25_deg_up( } static void water_rc_track_right_quarter_turn_3_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_right_quarter_turn_3_tiles_25_deg_down( @@ -261,7 +261,7 @@ static constexpr const uint8_t water_rc_left_quarter_turn_3_tiles_to_right_turn_ }; static void water_rc_track_left_quarter_turn_3_tiles_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = water_rc_left_quarter_turn_3_tiles_to_right_turn_map[trackSequence]; @@ -270,7 +270,7 @@ static void water_rc_track_left_quarter_turn_3_tiles_25_deg_up( } static void water_rc_track_left_quarter_turn_3_tiles_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { trackSequence = water_rc_left_quarter_turn_3_tiles_to_right_turn_map[trackSequence]; @@ -279,7 +279,7 @@ static void water_rc_track_left_quarter_turn_3_tiles_25_deg_down( } static void water_rc_track_diag_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_60_deg_up( @@ -287,7 +287,7 @@ static void water_rc_track_diag_60_deg_up( } static void water_rc_track_diag_25_deg_up_to_60_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_25_deg_up_to_60_deg_up( @@ -295,7 +295,7 @@ static void water_rc_track_diag_25_deg_up_to_60_deg_up( } static void water_rc_track_diag_60_deg_up_to_25_deg_up( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_60_deg_up_to_25_deg_up( @@ -303,7 +303,7 @@ static void water_rc_track_diag_60_deg_up_to_25_deg_up( } static void water_rc_track_diag_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_60_deg_down( @@ -311,7 +311,7 @@ static void water_rc_track_diag_60_deg_down( } static void water_rc_track_diag_25_deg_down_to_60_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_25_deg_down_to_60_deg_down( @@ -319,7 +319,7 @@ static void water_rc_track_diag_25_deg_down_to_60_deg_down( } static void water_rc_track_diag_60_deg_down_to_25_deg_down( - paint_session* session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + paint_session& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) { junior_rc_paint_track_diag_60_deg_down_to_25_deg_down(