Skip to content

Commit

Permalink
Merge pull request OpenRCT2#21009 from Gymnasiast/refactor/covered-dr…
Browse files Browse the repository at this point in the history
…awers

Split up drawing functions for covered track elements
  • Loading branch information
IntelOrca authored Dec 13, 2023
2 parents ac3ab7e + a19250c commit 35a690b
Show file tree
Hide file tree
Showing 97 changed files with 1,132 additions and 1,115 deletions.
5 changes: 3 additions & 2 deletions src/openrct2/libopenrct2.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -981,7 +981,8 @@
<ClCompile Include="ride\VehicleRiderControl.cpp" />
<ClCompile Include="ride\VehicleSubpositionData.cpp" />
<ClCompile Include="ride\water\BoatHire.cpp" />
<ClCompile Include="ride\water\DingySlide.cpp" />
<ClCompile Include="ride\water\DinghySlide.cpp" />
<ClCompile Include="ride\water\DinghySlideCovered.cpp" />
<ClCompile Include="ride\water\LogFlume.cpp" />
<ClCompile Include="ride\water\RiverRapids.cpp" />
<ClCompile Include="ride\water\SplashBoats.cpp" />
Expand Down Expand Up @@ -1059,4 +1060,4 @@
</ClCompile>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
</Project>
</Project>
22 changes: 20 additions & 2 deletions src/openrct2/ride/RideData.h
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,24 @@ enum class RideConstructionWindowContext : uint8_t
Maze,
};

struct TrackDrawerDescriptor
{
TRACK_PAINT_FUNCTION_GETTER Regular;
TRACK_PAINT_FUNCTION_GETTER Covered;

constexpr TrackDrawerDescriptor(TRACK_PAINT_FUNCTION_GETTER function)
: Regular(function)
, Covered(nullptr)
{
}

constexpr TrackDrawerDescriptor(TRACK_PAINT_FUNCTION_GETTER functionRegular, TRACK_PAINT_FUNCTION_GETTER functionCovered)
: Regular(functionRegular)
, Covered(functionCovered)
{
}
};

struct RideTypeDescriptor
{
uint8_t AlternateType;
Expand All @@ -279,7 +297,7 @@ struct RideTypeDescriptor
RideTrackGroup CoveredTrackPieces;
/** rct2: 0x0097CC68 */
track_type_t StartTrackPiece;
TRACK_PAINT_FUNCTION_GETTER TrackPaintFunction;
TrackDrawerDescriptor TrackPaintFunctions;
uint64_t Flags;
/** rct2: 0x0097C8AC */
uint64_t RideModes;
Expand Down Expand Up @@ -511,7 +529,7 @@ constexpr RideTypeDescriptor DummyRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, nullptr),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(nullptr)),
SET_FIELD(Flags, 0),
SET_FIELD(RideModes, EnumsToFlags(RideMode::ContinuousCircuit)),
SET_FIELD(DefaultMode, RideMode::ContinuousCircuit),
Expand Down
47 changes: 47 additions & 0 deletions src/openrct2/ride/Track.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -669,6 +669,53 @@ bool TrackElementIsCovered(track_type_t trackElementType)
}
}

track_type_t UncoverTrackElement(track_type_t trackElementType)
{
switch (trackElementType)
{
case TrackElemType::FlatCovered:
return TrackElemType::Flat;
case TrackElemType::Up25Covered:
return TrackElemType::Up25;
case TrackElemType::Up60Covered:
return TrackElemType::Up60;
case TrackElemType::FlatToUp25Covered:
return TrackElemType::FlatToUp25;
case TrackElemType::Up25ToUp60Covered:
return TrackElemType::Up25ToUp60;
case TrackElemType::Up60ToUp25Covered:
return TrackElemType::Up60ToUp25;
case TrackElemType::Up25ToFlatCovered:
return TrackElemType::Up25ToFlat;
case TrackElemType::Down25Covered:
return TrackElemType::Down25;
case TrackElemType::Down60Covered:
return TrackElemType::Down60;
case TrackElemType::FlatToDown25Covered:
return TrackElemType::FlatToDown25;
case TrackElemType::Down25ToDown60Covered:
return TrackElemType::Down25ToDown60;
case TrackElemType::Down60ToDown25Covered:
return TrackElemType::Down60ToDown25;
case TrackElemType::Down25ToFlatCovered:
return TrackElemType::Down25ToFlat;
case TrackElemType::LeftQuarterTurn5TilesCovered:
return TrackElemType::LeftQuarterTurn5Tiles;
case TrackElemType::RightQuarterTurn5TilesCovered:
return TrackElemType::RightQuarterTurn5Tiles;
case TrackElemType::SBendLeftCovered:
return TrackElemType::SBendLeft;
case TrackElemType::SBendRightCovered:
return TrackElemType::SBendRight;
case TrackElemType::LeftQuarterTurn3TilesCovered:
return TrackElemType::LeftQuarterTurn3Tiles;
case TrackElemType::RightQuarterTurn3TilesCovered:
return TrackElemType::RightQuarterTurn3Tiles;
default:
return trackElementType;
}
}

bool TrackTypeHasSpeedSetting(track_type_t trackType)
{
return TrackTypeIsBooster(trackType) || TrackTypeIsBrakes(trackType) || TrackTypeIsBlockBrakes(trackType);
Expand Down
1 change: 1 addition & 0 deletions src/openrct2/ride/Track.h
Original file line number Diff line number Diff line change
Expand Up @@ -679,6 +679,7 @@ void TrackGetBack(const CoordsXYE& input, CoordsXYE* output);
void TrackGetFront(const CoordsXYE& input, CoordsXYE* output);

bool TrackElementIsCovered(track_type_t trackElementType);
track_type_t UncoverTrackElement(track_type_t trackElementType);
bool TrackTypeIsStation(track_type_t trackType);
bool TrackTypeIsBrakes(track_type_t trackType);
bool TrackTypeIsBlockBrakes(track_type_t trackType);
Expand Down
13 changes: 12 additions & 1 deletion src/openrct2/ride/TrackPaint.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2254,7 +2254,18 @@ void PaintTrack(PaintSession& session, Direction direction, int32_t height, cons
}

const auto& rtd = GetRideTypeDescriptor(trackElement.GetRideType());
TRACK_PAINT_FUNCTION_GETTER paintFunctionGetter = rtd.TrackPaintFunction;
auto paintFunctions = rtd.TrackPaintFunctions;
TRACK_PAINT_FUNCTION_GETTER paintFunctionGetter;
if (TrackElementIsCovered(trackType))
{
trackType = UncoverTrackElement(trackType);
paintFunctionGetter = paintFunctions.Covered;
}
else
{
paintFunctionGetter = paintFunctions.Regular;
}

if (paintFunctionGetter != nullptr)
{
TRACK_PAINT_FUNCTION paintFunction = paintFunctionGetter(trackType);
Expand Down
1 change: 1 addition & 0 deletions src/openrct2/ride/TrackPaint.h
Original file line number Diff line number Diff line change
Expand Up @@ -430,6 +430,7 @@ TRACK_PAINT_FUNCTION GetTrackPaintFunctionBobsleighRC(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionObservationTower(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionLoopingRC(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionDinghySlide(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionDinghySlideCovered(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionMineTrainRC(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionChairlift(int32_t trackType);
TRACK_PAINT_FUNCTION GetTrackPaintFunctionCorkscrewRC(int32_t trackType);
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/AirPoweredVerticalCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor AirPoweredVerticalCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_BOOSTER}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionAirPoweredVerticalRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionAirPoweredVerticalRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES),
SET_FIELD(RideModes, EnumsToFlags(RideMode::PoweredLaunchPasstrough, RideMode::PoweredLaunch)),
SET_FIELD(DefaultMode, RideMode::PoweredLaunchPasstrough),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/AlpineCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ constexpr RideTypeDescriptor AlpineCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_HELIX_UP_BANKED_HALF}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, AlpineRC::GetTrackPaintFunction),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(AlpineRC::GetTrackPaintFunction)),
SET_FIELD(Flags, RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN | RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS |
RIDE_TYPE_FLAG_HAS_DATA_LOGGING | RIDE_TYPE_FLAG_HAS_DROPS | RIDE_TYPE_FLAG_HAS_LOAD_OPTIONS | RIDE_TYPE_FLAG_PEEP_WILL_RIDE_AGAIN
| RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS | RIDE_TYPE_FLAG_CHECK_FOR_STALLING | RIDE_TYPE_FLAG_HAS_TRACK
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/BobsleighCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor BobsleighCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionBobsleighRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionBobsleighRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES |
RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/ClassicMiniRollerCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ constexpr RideTypeDescriptor ClassicMiniRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_ON_RIDE_PHOTO}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionJuniorRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionJuniorRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_ALLOW_DOORS_ON_TRACK | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor ClassicWoodenRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, 0),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionClassicWoodenRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionClassicWoodenRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/CompactInvertedCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor CompactInvertedCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionCompactInvertedRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionCompactInvertedRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS | RIDE_TYPE_FLAG_IS_SUSPENDED),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/CorkscrewRollerCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor CorkscrewRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_TWIST}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionCorkscrewRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionCorkscrewRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
4 changes: 2 additions & 2 deletions src/openrct2/ride/coaster/meta/FlyingRollerCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ constexpr RideTypeDescriptor FlyingRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_BOOSTER, TRACK_SLOPE_STEEP_LONG, TRACK_FLYING_LARGE_HALF_LOOP_UNINVERTED_DOWN, TRACK_FLYING_HALF_LOOP_UNINVERTED_DOWN, TRACK_STATION_END, TRACK_VERTICAL_LOOP, TRACK_POWERED_LIFT}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionFlyingRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionFlyingRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES |
Expand Down Expand Up @@ -96,7 +96,7 @@ constexpr RideTypeDescriptor FlyingRollerCoasterAltRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_FLYING_LARGE_HALF_LOOP_INVERTED_UP, TRACK_FLYING_HALF_LOOP_INVERTED_UP}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, nullptr),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(nullptr)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED),
SET_FIELD(RideModes, EnumsToFlags(RideMode::ContinuousCircuit, RideMode::ContinuousCircuitBlockSectioned)),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/GigaCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor GigaCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_BARREL_ROLL, TRACK_QUARTER_LOOP, TRACK_HALF_LOOP, TRACK_HALF_LOOP_MEDIUM, TRACK_HALF_LOOP_LARGE, TRACK_VERTICAL_LOOP, TRACK_CORKSCREW, TRACK_CORKSCREW_LARGE, TRACK_ZERO_G_ROLL, TRACK_ZERO_G_ROLL_LARGE}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionGigaRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionGigaRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS | RIDE_TYPE_FLAG_ALLOW_CABLE_LIFT_HILL |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/HeartlineTwisterCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor HeartlineTwisterCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionHeartlineTwisterRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionHeartlineTwisterRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES |
RIDE_TYPE_FLAG_ALLOW_REVERSED_TRAINS),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/HybridCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ constexpr RideTypeDescriptor HybridCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_BOOSTER}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, HybridRC::GetTrackPaintFunction),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(HybridRC::GetTrackPaintFunction)),
SET_FIELD(Flags, RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN | RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS | RIDE_TYPE_FLAG_ALLOW_REVERSED_TRAINS),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/HyperTwister.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ constexpr RideTypeDescriptor HyperTwisterRTD =
SET_FIELD(ExtraTrackPieces, { TRACK_LIFT_HILL_STEEP, TRACK_BRAKE_FOR_DROP, TRACK_BOOSTER, TRACK_POWERED_LIFT }),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionBolligerMabillard<MetalSupportType::Tubes>),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionBolligerMabillard<MetalSupportType::Tubes>)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/Hypercoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ constexpr RideTypeDescriptor HypercoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_VERTICAL_LOOP, TRACK_HALF_LOOP, TRACK_CORKSCREW, TRACK_BOOSTER}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionCorkscrewRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionCorkscrewRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/InvertedHairpinCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor InvertedHairpinCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionInvertedHairpinRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionInvertedHairpinRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES |
RIDE_TYPE_FLAG_IS_SUSPENDED),
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/InvertedImpulseCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor InvertedImpulseCoasterRTD =
SET_FIELD(ExtraTrackPieces, {}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionInvertedImpulseRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionInvertedImpulseRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES |
RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS | RIDE_TYPE_FLAG_IS_SUSPENDED |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/InvertedRollerCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor InvertedRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_BOOSTER}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionInvertedRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionInvertedRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS | RIDE_TYPE_FLAG_IS_SUSPENDED |
Expand Down
2 changes: 1 addition & 1 deletion src/openrct2/ride/coaster/meta/JuniorRollerCoaster.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr RideTypeDescriptor JuniorRollerCoasterRTD =
SET_FIELD(ExtraTrackPieces, {TRACK_SLOPE_STEEP_UP, TRACK_SLOPE_STEEP_DOWN, TRACK_ON_RIDE_PHOTO}),
SET_FIELD(CoveredTrackPieces, {}),
SET_FIELD(StartTrackPiece, TrackElemType::EndStation),
SET_FIELD(TrackPaintFunction, GetTrackPaintFunctionJuniorRC),
SET_FIELD(TrackPaintFunctions, TrackDrawerDescriptor(GetTrackPaintFunctionJuniorRC)),
SET_FIELD(Flags, RIDE_TYPE_FLAGS_TRACK_HAS_3_COLOURS | RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION |
RIDE_TYPE_FLAGS_COMMON_COASTER | RIDE_TYPE_FLAGS_COMMON_COASTER_NON_ALT |
RIDE_TYPE_FLAG_ALLOW_DOORS_ON_TRACK | RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES | RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS |
Expand Down
Loading

0 comments on commit 35a690b

Please sign in to comment.