1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2025-12-10 09:32:29 +01:00

Number track styles

This commit is contained in:
Gymnasiast
2024-12-02 20:10:34 +01:00
parent b0c18b0b18
commit 9b7bbcf69a
96 changed files with 317 additions and 106 deletions

View File

@@ -531,6 +531,7 @@
<ClInclude Include="ride\TrackDesign.h" />
<ClInclude Include="ride\TrackDesignRepository.h" />
<ClInclude Include="ride\TrackPaint.h" />
<ClInclude Include="ride\TrackStyle.h" />
<ClInclude Include="ride\TrainManager.h" />
<ClInclude Include="ride\Vehicle.h" />
<ClInclude Include="ride\VehicleColour.h" />
@@ -1053,6 +1054,7 @@
<ClCompile Include="ride\TrackDesignRepository.cpp" />
<ClCompile Include="ride\TrackDesignSave.cpp" />
<ClCompile Include="ride\TrackPaint.cpp" />
<ClCompile Include="ride\TrackStyle.cpp" />
<ClCompile Include="ride\TrainManager.cpp" />
<ClCompile Include="ride\Vehicle.cpp" />
<ClCompile Include="ride\VehicleData.cpp" />

View File

@@ -34,7 +34,7 @@
#include "RideStringIds.h"
#include "ShopItem.h"
#include "Track.h"
#include "TrackPaint.h"
#include "TrackStyle.h"
#include "Vehicle.h"
enum class ResearchCategory : uint8_t;
@@ -288,7 +288,7 @@ enum class RideConstructionWindowContext : uint8_t
struct TrackDrawerEntry
{
TRACK_PAINT_FUNCTION_GETTER Drawer = nullptr;
TrackStyle trackStyle = TrackStyle::null;
SupportType supportType{};
/** rct2: 0x0097C468 (0 - 31) and 0x0097C5D4 (32 - 63) */
RideTrackGroups enabledTrackGroups{};

View File

@@ -34,6 +34,7 @@
#include "Station.h"
#include "TrackData.h"
#include "TrackDesign.h"
#include "TrackStyle.h"
using namespace OpenRCT2;
using namespace OpenRCT2::TrackMetaData;
@@ -2009,10 +2010,10 @@ void PaintTrack(PaintSession& session, Direction direction, int32_t height, cons
bool isInverted = trackElement.IsInverted() && rtd.HasFlag(RtdFlag::hasInvertedVariant);
const auto trackDrawerEntry = getTrackDrawerEntry(rtd, isInverted, TrackElementIsCovered(trackType));
if (trackDrawerEntry.Drawer != nullptr)
if (trackDrawerEntry.trackStyle != TrackStyle::null)
{
trackType = UncoverTrackElement(trackType);
TRACK_PAINT_FUNCTION paintFunction = trackDrawerEntry.Drawer(trackType);
TRACK_PAINT_FUNCTION paintFunction = GetTrackPaintFunction(trackDrawerEntry.trackStyle, trackType);
if (paintFunction != nullptr)
{
paintFunction(session, *ride, trackSequence, direction, height, trackElement, trackDrawerEntry.supportType);

View File

@@ -0,0 +1,105 @@
/*****************************************************************************
* Copyright (c) 2014-2024 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#include "TrackStyle.h"
#include "TrackPaint.h"
static constexpr TRACK_PAINT_FUNCTION_GETTER kPaintFunctionMap[] = {
GetTrackPaintFunction3dCinema, // _3DCinema
GetTrackPaintFunctionAirPoweredVerticalRC, // airPoweredVerticalCoaster
OpenRCT2::AlpineRC::GetTrackPaintFunction, // alpineCoaster
GetTrackPaintFunctionBoatHire, // boatHire
GetTrackPaintFunctionBobsleighRC, // bobsleighCoaster
GetTrackPaintFunctionCarRide, // carRide
GetTrackPaintFunctionChairlift, // chairlift
GetTrackPaintFunctionCircus, // circus
GetTrackPaintFunctionClassicStandUpRC, // classicStandUpRollerCoaster
GetTrackPaintFunctionClassicWoodenRC, // classicWoodenRollerCoaster
GetTrackPaintFunctionClassicWoodenTwisterRC, // classicWoodenTwisterRollerCoaster
GetTrackPaintFunctionCompactInvertedRC, // compactInvertedCoaster
GetTrackPaintFunctionCorkscrewRC, // corkscrewRollerCoaster
GetTrackPaintFunctionCrookedHouse, // crookedHouse
GetTrackPaintFunctionDinghySlide, // dinghySlide
GetTrackPaintFunctionDinghySlideCovered, // dinghySlideCovered
GetTrackPaintFunctionDodgems, // dodgems
GetTrackPaintFunctionEnterprise, // enterprise
GetTrackPaintFunctionFacility, // facility
GetTrackPaintFunctionFerrisWheel, // ferrisWheel
GetTrackPaintFunctionFlyingRC, // flyingRollerCoaster
GetTrackPaintFunctionFlyingRCInverted, // flyingRollerCoasterInverted
GetTrackPaintFunctionFlyingSaucers, // flyingSaucers
GetTrackPaintFunctionGhostTrain, // ghostTrain
GetTrackPaintFunctionGoKarts, // goKarts
GetTrackPaintFunctionHauntedHouse, // hauntedHouse
GetTrackPaintFunctionHeartlineTwisterRC, // heartlineTwisterCoaster
OpenRCT2::HybridRC::GetTrackPaintFunction, // hybridCoaster
GetTrackPaintFunctionInvertedHairpinRC, // invertedHairpinCoaster
GetTrackPaintFunctionInvertedImpulseRC, // invertedImpulseCoaster
GetTrackPaintFunctionInvertedRC, // invertedRollerCoaster
GetTrackPaintFunctionJuniorRC, // juniorRollerCoaster
GetTrackPaintFunctionLatticeTriangleTrack, // latticeTriangle
GetTrackPaintFunctionLatticeTriangleTrackAlt, // latticeTriangleAlt
GetTrackPaintFunctionLaunchedFreefall, // launchedFreefall
GetTrackPaintFunctionLayDownRCInverted, // layDownRollerCoasterInverted
GetTrackPaintFunctionLift, // lift
GetTrackPaintFunctionLimLaunchedRC, // limLaunchedRollerCoaster
GetTrackPaintFunctionLogFlume, // logFlume
GetTrackPaintFunctionLoopingRC, // loopingRollerCoaster
GetTrackPaintFunctionMagicCarpet, // magicCarpet
GetTrackPaintFunctionMaze, // maze
GetTrackPaintFunctionMerryGoRound, // merryGoRound
GetTrackPaintFunctionMineRide, // mineRide
GetTrackPaintFunctionMineTrainRC, // mineTrainCoaster
GetTrackPaintFunctionMiniGolf, // miniGolf
GetTrackPaintFunctionMiniHelicopters, // miniHelicopters
GetTrackPaintFunctionMiniRC, // miniRollerCoaster
GetTrackPaintFunctionMiniSuspendedRC, // miniSuspendedCoaster
GetTrackPaintFunctionMiniatureRailway, // miniatureRailway
GetTrackPaintFunctionMonorail, // monorail
GetTrackPaintFunctionMonorailCycles, // monorailCycles
GetTrackPaintFunctionMotionsimulator, // motionSimulator
GetTrackPaintFunctionMultiDimensionRC, // multiDimensionRollerCoaster
GetTrackPaintFunctionMultiDimensionRC, // multiDimensionRollerCoasterInverted
GetTrackPaintFunctionObservationTower, // observationTower
GetTrackPaintFunctionReverseFreefallRC, // reverseFreefallCoaster
GetTrackPaintFunctionReverserRC, // reverserRollerCoaster
GetTrackPaintFunctionRiverRapids, // riverRapids
GetTrackPaintFunctionRotoDrop, // rotoDrop
GetTrackPaintFunctionShop, // shop
GetTrackPaintFunctionSideFrictionRC, // sideFrictionRollerCoaster
OpenRCT2::SingleRailRC::GetTrackPaintFunction, // singleRailRollerCoaster
GetTrackPaintFunctionSpaceRings, // spaceRings
GetTrackPaintFunctionSpiralSlide, // spiralSlide
GetTrackPaintFunctionSplashBoats, // splashBoats
GetTrackPaintFunctionStandUpRC, // standUpRollerCoaster
GetTrackPaintFunctionWildMouse, // steelWildMouse
GetTrackPaintFunctionSteeplechase, // steeplechase
GetTrackPaintFunctionSubmarineRide, // submarineRide
GetTrackPaintFunctionSuspendedMonorail, // suspendedMonorail
GetTrackPaintFunctionSuspendedSwingingRC, // suspendedSwingingCoaster
GetTrackPaintFunctionSwingingInverterShip, // swingingInverterShip
GetTrackPaintFunctionSwingingShip, // swingingShip
GetTrackPaintFunctionTopspin, // topSpin
GetTrackPaintFunctionTwist, // twist
GetTrackPaintFunctionTwisterRC, // twisterRollerCoaster
GetTrackPaintFunctionVirginiaReel, // virginiaReel
GetTrackPaintFunctionWaterRC, // waterCoaster
GetTrackPaintFunctionWoodenRC, // woodenRollerCoaster
GetTrackPaintFunctionWoodenWildMouse, // woodenWildMouse
};
TRACK_PAINT_FUNCTION GetTrackPaintFunction(TrackStyle trackStyle, OpenRCT2::TrackElemType trackType)
{
auto cast = static_cast<uint8_t>(trackStyle);
if (cast >= std::size(kPaintFunctionMap))
return nullptr;
return kPaintFunctionMap[cast](trackType);
}

View File

@@ -0,0 +1,103 @@
/*****************************************************************************
* Copyright (c) 2014-2024 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#pragma once
#include "TrackPaint.h"
#include <cstdint>
enum class TrackStyle : uint8_t
{
_3DCinema,
airPoweredVerticalCoaster,
alpineCoaster,
boatHire,
bobsleighCoaster,
carRide,
chairlift,
circus,
classicStandUpRollerCoaster,
classicWoodenRollerCoaster,
classicWoodenTwisterRollerCoaster,
compactInvertedCoaster,
corkscrewRollerCoaster,
crookedHouse,
dinghySlide,
dinghySlideCovered,
dodgems,
enterprise,
facility,
ferrisWheel,
flyingRollerCoaster,
flyingRollerCoasterInverted,
flyingSaucers,
ghostTrain,
goKarts,
hauntedHouse,
heartlineTwisterCoaster,
hybridCoaster,
invertedHairpinCoaster,
invertedImpulseCoaster,
invertedRollerCoaster,
juniorRollerCoaster,
latticeTriangle,
latticeTriangleAlt,
launchedFreefall,
layDownRollerCoasterInverted,
lift,
limLaunchedRollerCoaster,
logFlume,
loopingRollerCoaster,
magicCarpet,
maze,
merryGoRound,
mineRide,
mineTrainCoaster,
miniGolf,
miniHelicopters,
miniRollerCoaster,
miniSuspendedCoaster,
miniatureRailway,
monorail,
monorailCycles,
motionSimulator,
multiDimensionRollerCoaster,
multiDimensionRollerCoasterInverted,
observationTower,
reverseFreefallCoaster,
reverserRollerCoaster,
riverRapids,
rotoDrop,
shop,
sideFrictionRollerCoaster,
singleRailRollerCoaster,
spaceRings,
spiralSlide,
splashBoats,
standUpRollerCoaster,
steelWildMouse,
steeplechase,
submarineRide,
suspendedMonorail,
suspendedSwingingCoaster,
swingingInverterShip,
swingingShip,
topSpin,
twist,
twisterRollerCoaster,
virginiaReel,
waterCoaster,
woodenRollerCoaster,
woodenWildMouse,
null = 255,
};
TRACK_PAINT_FUNCTION GetTrackPaintFunction(TrackStyle trackStyle, OpenRCT2::TrackElemType trackType);

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor AirPoweredVerticalCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionAirPoweredVerticalRC,
.trackStyle = TrackStyle::airPoweredVerticalCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHillSteep, TrackGroup::liftHillCurve, TrackGroup::flatRollBanking, TrackGroup::curve, TrackGroup::brakes, TrackGroup::reverseFreefall, TrackGroup::slopeToFlat, TrackGroup::onridePhoto},
.extraTrackGroups = {TrackGroup::booster},

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor AlpineCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = OpenRCT2::AlpineRC::GetTrackPaintFunction,
.trackStyle = TrackStyle::alpineCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = { TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf},
.extraTrackGroups = {TrackGroup::helixUpBankedHalf},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor BobsleighCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionBobsleighRC,
.trackStyle = TrackStyle::bobsleighCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve,TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes,TrackGroup::blockBrakes, TrackGroup::onridePhoto},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ClassicMiniRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionJuniorRC,
.trackStyle = TrackStyle::juniorRollerCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillCurve, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::blockBrakes, TrackGroup::booster, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::onridePhoto},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ClassicStandUpRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionClassicStandUpRC,
.trackStyle = TrackStyle::classicStandUpRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong, TrackGroup::slopeCurveLarge, TrackGroup::corkscrewLarge, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge},
.extraTrackGroups = {TrackGroup::slopeVertical, TrackGroup::slopeCurveSteep, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::barrelRoll, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ClassicWoodenRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionClassicWoodenRC,
.trackStyle = TrackStyle::classicWoodenRollerCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::waterSplash, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge},
.extraTrackGroups = {TrackGroup::booster, TrackGroup::slopeCurveSteep},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ClassicWoodenTwisterRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionClassicWoodenTwisterRC,
.trackStyle = TrackStyle::classicWoodenTwisterRollerCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = { TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::slopeCurveSteep, TrackGroup::slopeCurveBanked },
.extraTrackGroups = { TrackGroup::verticalLoop, TrackGroup::waterSplash, TrackGroup::booster, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge },

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor CompactInvertedCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCompactInvertedRC,
.trackStyle = TrackStyle::compactInvertedCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::twist, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::helixDownBankedQuarter, TrackGroup::helixUpBankedQuarter, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor CorkscrewRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCorkscrewRC,
.trackStyle = TrackStyle::corkscrewRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes,TrackGroup::booster, TrackGroup::slopeSteepLong, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge, TrackGroup::corkscrewLarge, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge},
.extraTrackGroups = {TrackGroup::twist, TrackGroup::slopeVertical, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::barrelRoll, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},

View File

@@ -21,13 +21,13 @@ constexpr RideTypeDescriptor FlyingRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFlyingRC,
.trackStyle = TrackStyle::flyingRollerCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::inlineTwistUninverted, TrackGroup::flyingHalfLoopUninvertedUp, TrackGroup::quarterLoopUninvertedUp, TrackGroup::flyingLargeHalfLoopUninvertedUp, TrackGroup::slopeVertical, TrackGroup::slopeCurveBanked, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeCurveLarge},
.extraTrackGroups = {TrackGroup::booster, TrackGroup::slopeSteepLong, TrackGroup::flyingLargeHalfLoopUninvertedDown, TrackGroup::flyingHalfLoopUninvertedDown, TrackGroup::stationEnd, TrackGroup::verticalLoop, TrackGroup::poweredLift},
}),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFlyingRCInverted,
.trackStyle = TrackStyle::flyingRollerCoasterInverted,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedQuarter, TrackGroup::helixUpBankedQuarter, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::inlineTwistInverted, TrackGroup::flyingHalfLoopInvertedDown, TrackGroup::quarterLoopInvertedDown, TrackGroup::flyingLargeHalfLoopInvertedDown, TrackGroup::booster, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::flyingLargeHalfLoopInvertedUp, TrackGroup::flyingHalfLoopInvertedUp},
@@ -99,12 +99,12 @@ constexpr RideTypeDescriptor FlyingRollerCoasterAltRTD =
.Category = RIDE_CATEGORY_NONE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor GigaCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLatticeTriangleTrack,
.trackStyle = TrackStyle::latticeTriangle,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeSteepLong, TrackGroup::liftHillCable, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeVertical, TrackGroup::curveVertical},
.extraTrackGroups = {TrackGroup::barrelRoll, TrackGroup::quarterLoop, TrackGroup::halfLoop, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge, TrackGroup::verticalLoop, TrackGroup::corkscrew, TrackGroup::corkscrewLarge, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge, TrackGroup::booster, TrackGroup::diagBooster, TrackGroup::poweredLift},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor HeartlineTwisterCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionHeartlineTwisterRC,
.trackStyle = TrackStyle::heartlineTwisterCoaster,
.supportType = WoodenSupportType::Mine,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::heartlineRoll, TrackGroup::heartlineTransfer},
.extraTrackGroups = {},

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor HybridCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = OpenRCT2::HybridRC::GetTrackPaintFunction,
.trackStyle = TrackStyle::hybridCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::barrelRoll, TrackGroup::poweredLift, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeSteepLong, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge, TrackGroup::slopeCurveLarge, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::inclinedBrakes },
.extraTrackGroups = {TrackGroup::booster},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor HyperTwisterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionTwisterRC,
.trackStyle = TrackStyle::twisterRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = { TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeSteepLong, TrackGroup::slopeVertical, TrackGroup::curveVertical, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeCurveLarge},
.extraTrackGroups = { TrackGroup::liftHillSteep, TrackGroup::brakeForDrop, TrackGroup::booster, TrackGroup::poweredLift },

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor HypercoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCorkscrewRC,
.trackStyle = TrackStyle::corkscrewRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeSteepLong, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge},
.extraTrackGroups = {TrackGroup::verticalLoop, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::booster},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor InvertedHairpinCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionInvertedHairpinRC,
.trackStyle = TrackStyle::invertedHairpinCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::brakes, TrackGroup::blockBrakes},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor InvertedImpulseCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionInvertedImpulseRC,
.trackStyle = TrackStyle::invertedImpulseCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeVertical, TrackGroup::curveVertical},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor InvertedRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionInvertedRC,
.trackStyle = TrackStyle::invertedRollerCoaster,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::twist, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::helixDownBankedQuarter, TrackGroup::helixUpBankedQuarter, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::halfLoopLarge, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::booster},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor JuniorRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionJuniorRC,
.trackStyle = TrackStyle::juniorRollerCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill,TrackGroup::liftHillCurve, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::blockBrakes, TrackGroup::booster, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::onridePhoto},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LIMLaunchedRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLimLaunchedRC,
.trackStyle = TrackStyle::limLaunchedRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::twist, TrackGroup::corkscrew, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::barrelRoll, TrackGroup::slopeCurveBanked, TrackGroup::slopeSteepLong, TrackGroup::halfLoop, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge, TrackGroup::corkscrewLarge},
.extraTrackGroups = {TrackGroup::flatToSteepSlope, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LSMLaunchedRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLatticeTriangleTrackAlt,
.trackStyle = TrackStyle::latticeTriangleAlt,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeSteepLong, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge, TrackGroup::slopeCurveLargeBanked, TrackGroup::booster, TrackGroup::diagBooster, TrackGroup::poweredLift, TrackGroup::slopeVertical, TrackGroup::curveVertical, TrackGroup::barrelRoll, TrackGroup::quarterLoop, TrackGroup::halfLoop, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge, TrackGroup::verticalLoop, TrackGroup::corkscrew, TrackGroup::corkscrewLarge, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge },
.extraTrackGroups = {TrackGroup::liftHill, TrackGroup::liftHillCable},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor LayDownRollerCoasterRTD =
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor(
{
.Drawer = GetTrackPaintFunctionCorkscrewRC,
.trackStyle = TrackStyle::corkscrewRollerCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::inlineTwistUninverted, TrackGroup::flyingHalfLoopUninvertedUp, TrackGroup::corkscrewUninverted, TrackGroup::slopeSteepLong, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge },
.extraTrackGroups = { TrackGroup::flyingHalfLoopUninvertedDown, TrackGroup::booster },
@@ -29,7 +29,7 @@ constexpr RideTypeDescriptor LayDownRollerCoasterRTD =
),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor(
{
.Drawer = GetTrackPaintFunctionLayDownRCInverted,
.trackStyle = TrackStyle::layDownRollerCoasterInverted,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedQuarter, TrackGroup::helixUpBankedQuarter, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::inlineTwistInverted, TrackGroup::flyingHalfLoopInvertedDown, TrackGroup::corkscrewInverted },
.extraTrackGroups = { TrackGroup::flyingHalfLoopInvertedUp, TrackGroup::stationEnd, TrackGroup::liftHill },
@@ -98,12 +98,12 @@ constexpr RideTypeDescriptor LayDownRollerCoasterAltRTD =
.Category = RIDE_CATEGORY_NONE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LoopingRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLoopingRC,
.trackStyle = TrackStyle::loopingRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::booster, TrackGroup::slopeCurveBanked, TrackGroup::slopeSteepLong, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::slopeVertical, TrackGroup::twist, TrackGroup::corkscrew, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::flatToSteepSlope, TrackGroup::barrelRoll, TrackGroup::halfLoop, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge,TrackGroup::corkscrewLarge, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MineRideRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMineRide,
.trackStyle = TrackStyle::mineRide,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::onridePhoto},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MineTrainCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMineTrainRC,
.trackStyle = TrackStyle::mineTrainCoaster,
.supportType = WoodenSupportType::Mine,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MiniRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniRC,
.trackStyle = TrackStyle::miniRollerCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::liftHill},
.extraTrackGroups = {TrackGroup::booster, TrackGroup::liftHillCurved},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MiniSuspendedCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniSuspendedRC,
.trackStyle = TrackStyle::miniSuspendedCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge},
.extraTrackGroups = {},

View File

@@ -20,13 +20,13 @@ constexpr RideTypeDescriptor MultiDimensionRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMultiDimensionRC,
.trackStyle = TrackStyle::multiDimensionRollerCoaster,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::blockBrakes, TrackGroup::inlineTwistUninverted,TrackGroup::quarterLoopUninvertedUp, TrackGroup::quarterLoopUninvertedDown, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {},
}),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMultiDimensionRC,
.trackStyle = TrackStyle::multiDimensionRollerCoasterInverted,
.supportType = MetalSupportType::TubesInverted,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::blockBrakes, TrackGroup::inlineTwistInverted, TrackGroup::quarterLoopInvertedUp, TrackGroup::quarterLoopInvertedDown},
.extraTrackGroups = {},
@@ -98,12 +98,12 @@ constexpr RideTypeDescriptor MultiDimensionRollerCoasterAltRTD =
.Category = RIDE_CATEGORY_NONE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),
.InvertedTrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = nullptr,
.trackStyle = TrackStyle::null,
.enabledTrackGroups = { },
.extraTrackGroups = { },
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ReverseFreefallCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionReverseFreefallRC,
.trackStyle = TrackStyle::reverseFreefallCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHillSteep, TrackGroup::reverseFreefall, TrackGroup::onridePhoto},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor ReverserRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionReverserRC,
.trackStyle = TrackStyle::reverserRollerCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::brakes, TrackGroup::reverser},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SideFrictionRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSideFrictionRC,
.trackStyle = TrackStyle::sideFrictionRollerCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::brakes, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown},
.extraTrackGroups = {},

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor SingleRailRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = OpenRCT2::SingleRailRC::GetTrackPaintFunction,
.trackStyle = TrackStyle::singleRailRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = { TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::flatToSteepSlope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::corkscrew, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::barrelRoll, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::halfLoop, TrackGroup::halfLoopMedium, TrackGroup::corkscrewLarge, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge, TrackGroup::slopeCurveLarge, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::inclinedBrakes },
.extraTrackGroups = {TrackGroup::slopeSteepLong, TrackGroup::halfLoopLarge},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SpinningWildMouseRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionWildMouse,
.trackStyle = TrackStyle::steelWildMouse,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight,TrackGroup::stationEnd,TrackGroup::liftHill, TrackGroup::slope,TrackGroup::flatToSteepSlope,TrackGroup::curveVerySmall,TrackGroup::curveSmall, TrackGroup::brakes,TrackGroup::blockBrakes,TrackGroup::rotationControlToggle},
.extraTrackGroups = {TrackGroup::liftHillSteep, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SpiralRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniRC,
.trackStyle = TrackStyle::miniRollerCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::liftHillCurved},
.extraTrackGroups = {TrackGroup::booster, TrackGroup::liftHill},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor StandUpRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionStandUpRC,
.trackStyle = TrackStyle::standUpRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::blockBrakes, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong, TrackGroup::slopeRollBanking, TrackGroup::slopeCurveBanked, TrackGroup::slopeCurveLarge, TrackGroup::corkscrewLarge, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge},
.extraTrackGroups = {TrackGroup::slopeVertical, TrackGroup::slopeCurveSteep, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::barrelRoll, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SteelWildMouseRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionWildMouse,
.trackStyle = TrackStyle::steelWildMouse,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::brakes, TrackGroup::blockBrakes},
.extraTrackGroups = {TrackGroup::rotationControlToggle},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SteeplechaseRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSteeplechase,
.trackStyle = TrackStyle::steeplechase,
.supportType = MetalSupportType::Stick,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::brakes, TrackGroup::blockBrakes},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SuspendedSwingingCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSuspendedSwingingRC,
.trackStyle = TrackStyle::suspendedSwingingCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownUnbankedQuarter, TrackGroup::helixUpUnbankedQuarter, TrackGroup::brakes, TrackGroup::blockBrakes},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor TwisterRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionTwisterRC,
.trackStyle = TrackStyle::twisterRollerCoaster,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = {TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::halfLoop, TrackGroup::corkscrew, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::barrelRoll, TrackGroup::poweredLift, TrackGroup::halfLoopLarge, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::slopeSteepLong, TrackGroup::curveVertical, TrackGroup::quarterLoop, TrackGroup::booster, TrackGroup::twist, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeCurveLarge, TrackGroup::corkscrewLarge, TrackGroup::halfLoopMedium, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge},
.extraTrackGroups = {TrackGroup::liftHillSteep, TrackGroup::brakeForDrop},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor VerticalDropCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionTwisterRC,
.trackStyle = TrackStyle::twisterRollerCoaster,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::flatToSteepSlope, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::slopeVertical, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::curveVertical, TrackGroup::halfLoopLarge, TrackGroup::brakeForDrop, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeCurveLarge, TrackGroup::halfLoopMedium, TrackGroup::zeroGRoll, TrackGroup::zeroGRollLarge, TrackGroup::corkscrew, TrackGroup::corkscrewLarge},
.extraTrackGroups = {TrackGroup::halfLoop, TrackGroup::barrelRoll, TrackGroup::poweredLift, TrackGroup::halfLoopLarge, TrackGroup::quarterLoop, TrackGroup::booster, TrackGroup::twist},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor VirginiaReelRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionVirginiaReel,
.trackStyle = TrackStyle::virginiaReel,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::curveSmall},
.extraTrackGroups = {},

View File

@@ -23,7 +23,7 @@ constexpr RideTypeDescriptor WaterCoasterRTD =
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor(
{
.Drawer = GetTrackPaintFunctionWaterRC,
.trackStyle = TrackStyle::waterCoaster,
.supportType = MetalSupportType::Fork,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::blockBrakes, TrackGroup::onridePhoto, TrackGroup::booster, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes},
.extraTrackGroups = {TrackGroup::flatToSteepSlope},
@@ -31,7 +31,7 @@ constexpr RideTypeDescriptor WaterCoasterRTD =
.tooltip = STR_RIDE_CONSTRUCTION_STANDARD_RC_TRACK_TIP,
},
{
.Drawer = GetTrackPaintFunctionSplashBoats,
.trackStyle = TrackStyle::splashBoats,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::curve, TrackGroup::sBend },
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor WoodenRollerCoasterRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionWoodenRC,
.trackStyle = TrackStyle::woodenRollerCoaster,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::flat, TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::flatRollBanking, TrackGroup::verticalLoop, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::slopeCurve, TrackGroup::slopeCurveSteep, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::helixDownBankedHalf, TrackGroup::helixUpBankedHalf, TrackGroup::brakes, TrackGroup::onridePhoto, TrackGroup::waterSplash, TrackGroup::slopeCurveBanked, TrackGroup::blockBrakes, TrackGroup::slopeRollBanking, TrackGroup::diagBrakes, TrackGroup::diagBlockBrakes, TrackGroup::slopeSteepLong, TrackGroup::halfLoopMedium, TrackGroup::halfLoopLarge},
.extraTrackGroups = {TrackGroup::booster},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor WoodenWildMouseRTD =
.Category = RIDE_CATEGORY_ROLLERCOASTER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionWoodenWildMouse,
.trackStyle = TrackStyle::woodenWildMouse,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::liftHillSteep, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::flatToSteepSlope, TrackGroup::curveVerySmall, TrackGroup::curveSmall},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor CarRideRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCarRide,
.trackStyle = TrackStyle::carRide,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::spinningTunnel},
.extraTrackGroups = {TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::rapids},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor CircusRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCircus,
.trackStyle = TrackStyle::circus,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor CrookedHouseRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCrookedHouse,
.trackStyle = TrackStyle::crookedHouse,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor DodgemsRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack4x4,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionDodgems,
.trackStyle = TrackStyle::dodgems,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor FerrisWheelRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x4C,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFerrisWheel,
.trackStyle = TrackStyle::ferrisWheel,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor FlyingSaucersRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack4x4,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFlyingSaucers,
.trackStyle = TrackStyle::flyingSaucers,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor GhostTrainRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionGhostTrain,
.trackStyle = TrackStyle::ghostTrain,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::brakes, TrackGroup::spinningTunnel},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor HauntedHouseRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionHauntedHouse,
.trackStyle = TrackStyle::hauntedHouse,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -22,7 +22,7 @@ constexpr RideTypeDescriptor MazeRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::Maze,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMaze,
.trackStyle = TrackStyle::maze,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MerryGoRoundRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMerryGoRound,
.trackStyle = TrackStyle::merryGoRound,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MiniGolfRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniGolf,
.trackStyle = TrackStyle::miniGolf,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::miniGolfHole},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MiniHelicoptersRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniHelicopters,
.trackStyle = TrackStyle::miniHelicopters,
.supportType = MetalSupportType::Stick,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::curveSmall},
.extraTrackGroups = {TrackGroup::spinningTunnel},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MonorailCyclesRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMonorailCycles,
.trackStyle = TrackStyle::monorailCycles,
.supportType = MetalSupportType::Stick,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MonsterTrucksRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionCarRide,
.trackStyle = TrackStyle::carRide,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::rapids},
.extraTrackGroups = {TrackGroup::spinningTunnel},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor ObservationTowerRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::TowerBase,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionObservationTower,
.trackStyle = TrackStyle::observationTower,
.enabledTrackGroups = {TrackGroup::tower},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SpaceRingsRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSpaceRings,
.trackStyle = TrackStyle::spaceRings,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SpiralSlideRTD =
.Category = RIDE_CATEGORY_GENTLE,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack2x2,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSpiralSlide,
.trackStyle = TrackStyle::spiralSlide,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor CashMachineRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionShop,
.trackStyle = TrackStyle::shop,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor DrinkStallRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionShop,
.trackStyle = TrackStyle::shop,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor FirstAidRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFacility,
.trackStyle = TrackStyle::facility,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor FoodStallRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionShop,
.trackStyle = TrackStyle::shop,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor InformationKioskRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1B,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionShop,
.trackStyle = TrackStyle::shop,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor ShopRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionShop,
.trackStyle = TrackStyle::shop,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor ToiletsRTD =
.Category = RIDE_CATEGORY_SHOP,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x1A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionFacility,
.trackStyle = TrackStyle::facility,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor CinemaRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunction3dCinema,
.trackStyle = TrackStyle::_3DCinema,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor EnterpriseRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack4x4,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionEnterprise,
.trackStyle = TrackStyle::enterprise,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor GoKartsRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionGoKarts,
.trackStyle = TrackStyle::goKarts,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LaunchedFreefallRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::TowerBase,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLaunchedFreefall,
.trackStyle = TrackStyle::launchedFreefall,
.enabledTrackGroups = {TrackGroup::tower},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor MagicCarpetRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x4A,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMagicCarpet,
.trackStyle = TrackStyle::magicCarpet,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor MotionSimulatorRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack2x2,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMotionsimulator,
.trackStyle = TrackStyle::motionSimulator,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor RotoDropRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::TowerBase,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionRotoDrop,
.trackStyle = TrackStyle::rotoDrop,
.enabledTrackGroups = {TrackGroup::tower},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SwingingInverterShipRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x4B,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSwingingInverterShip,
.trackStyle = TrackStyle::swingingInverterShip,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SwingingShipRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack1x5,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSwingingShip,
.trackStyle = TrackStyle::swingingShip,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor TopSpinRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionTopspin,
.trackStyle = TrackStyle::topSpin,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -19,7 +19,7 @@ constexpr RideTypeDescriptor TwistRTD =
.Category = RIDE_CATEGORY_THRILL,
.StartTrackPiece = OpenRCT2::TrackElemType::FlatTrack3x3,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionTwist,
.trackStyle = TrackStyle::twist,
.enabledTrackGroups = {},
.extraTrackGroups = {},
}),

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor ChairliftRTD =
.Category = RIDE_CATEGORY_TRANSPORT,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionChairlift,
.trackStyle = TrackStyle::chairlift,
.supportType = MetalSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LiftRTD =
.Category = RIDE_CATEGORY_TRANSPORT,
.StartTrackPiece = OpenRCT2::TrackElemType::TowerBase,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLift,
.trackStyle = TrackStyle::lift,
.enabledTrackGroups = {TrackGroup::tower},
.extraTrackGroups = {},
}),

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MiniatureRailwayRTD =
.Category = RIDE_CATEGORY_TRANSPORT,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMiniatureRailway,
.trackStyle = TrackStyle::miniatureRailway,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor MonorailRTD =
.Category = RIDE_CATEGORY_TRANSPORT,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionMonorail,
.trackStyle = TrackStyle::monorail,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor SuspendedMonorailRTD =
.Category = RIDE_CATEGORY_TRANSPORT,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSuspendedMonorail,
.trackStyle = TrackStyle::suspendedMonorail,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor BoatHireRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionBoatHire,
.trackStyle = TrackStyle::boatHire,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::sBend},
.extraTrackGroups = {},
}),

View File

@@ -22,7 +22,7 @@ constexpr RideTypeDescriptor DinghySlideRTD =
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor(
{
.Drawer = GetTrackPaintFunctionDinghySlide,
.trackStyle = TrackStyle::dinghySlide,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::liftHill, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::curve },
.extraTrackGroups = {},
@@ -30,7 +30,7 @@ constexpr RideTypeDescriptor DinghySlideRTD =
.tooltip = STR_RIDE_CONSTRUCTION_U_SHAPED_OPEN_TRACK_TIP,
},
{
.Drawer = GetTrackPaintFunctionDinghySlideCovered,
.trackStyle = TrackStyle::dinghySlideCovered,
.supportType = MetalSupportType::Tubes,
.enabledTrackGroups = { TrackGroup::straight, TrackGroup::slope, TrackGroup::slopeSteepUp, TrackGroup::slopeSteepDown, TrackGroup::curve, TrackGroup::sBend, TrackGroup::curveSmall },
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor LogFlumeRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionLogFlume,
.trackStyle = TrackStyle::logFlume,
.supportType = MetalSupportType::Boxed,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::sBend, TrackGroup::curveSmall, TrackGroup::onridePhoto, TrackGroup::logFlumeReverser, TrackGroup::slopeSteepDown},
.extraTrackGroups = {},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor RiverRaftsRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSplashBoats,
.trackStyle = TrackStyle::splashBoats,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::sBend, TrackGroup::curve},
.extraTrackGroups = {TrackGroup::slope, TrackGroup::slopeSteepDown, TrackGroup::onridePhoto},

View File

@@ -20,7 +20,7 @@ constexpr RideTypeDescriptor RiverRapidsRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionRiverRapids,
.trackStyle = TrackStyle::riverRapids,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::curveVerySmall, TrackGroup::onridePhoto, TrackGroup::rapids, TrackGroup::waterfall, TrackGroup::whirlpool},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor SplashBoatsRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSplashBoats,
.trackStyle = TrackStyle::splashBoats,
.supportType = WoodenSupportType::Truss,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::slope, TrackGroup::slopeSteepDown, TrackGroup::sBend, TrackGroup::curve, TrackGroup::onridePhoto},
.extraTrackGroups = {},

View File

@@ -21,7 +21,7 @@ constexpr RideTypeDescriptor SubmarineRideRTD =
.Category = RIDE_CATEGORY_WATER,
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
.TrackPaintFunctions = TrackDrawerDescriptor({
.Drawer = GetTrackPaintFunctionSubmarineRide,
.trackStyle = TrackStyle::submarineRide,
.supportType = MetalSupportType::Stick,
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::curveVerySmall, TrackGroup::curveSmall},
.extraTrackGroups = {},